Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mengejek database MySQL dengan Python

Anda dapat meniru db mysql menggunakan testing.mysqld (pip install testing.mysqld )

Karena beberapa log kesalahan berisik yang muncul , Saya suka pengaturan ini saat menguji:

import testing.mysqld
from sqlalchemy import create_engine

# prevent generating brand new db every time.  Speeds up tests.
MYSQLD_FACTORY = testing.mysqld.MysqldFactory(cache_initialized_db=True, port=7531)


def tearDownModule():
    """Tear down databases after test script has run.
    https://docs.python.org/3/library/unittest.html#setupclass-and-teardownclass
    """
    MYSQLD_FACTORY.clear_cache()


class TestWhatever(unittest.TestCase):

    @classmethod
    def setUpClass(cls):
        cls.mysql = MYSQLD_FACTORY()
        cls.db_conn = create_engine(cls.mysql.url()).connect()

    def setUp(self):
        self.mysql.start()
        self.db_conn.execute("""CREATE TABLE `foo` (blah)""")

    def tearDown(self):
        self.db_conn.execute("DROP TABLE foo")

    @classmethod
    def tearDownClass(cls):
        cls.mysql.stop()  # from source code we can see this kills the pid

    def test_something(self):
        # something useful


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apa kerugian menggunakan bidang berukuran teks panjang MySQL ketika setiap entri akan muat dalam bidang berukuran teks sedang?

  2. Apakah ada cara untuk memeriksa kinerja Pengindeksan mysql?

  3. CREATE TABLE MySQL vs T-SQL dengan Contoh Sintaks

  4. Apakah mungkin untuk mengurangi variabel di MySQL?

  5. File kunci salah untuk tabel '/tmp/#sql_3c51_0.MYI' coba perbaiki