sql >> データベース >  >> RDS >> PostgreSQL

Postgresql-データベースとテーブルを動的に作成する

    私はこれを行います:

    string connStr = "Server=localhost;Port=5432;User Id=postgres;Password=enter;";
    var m_conn = new NpgsqlConnection(connStr);
    var m_createdb_cmd = new NpgsqlCommand(@"
        CREATE DATABASE IF NOT EXISTS testDb
        WITH OWNER = postgres
        ENCODING = 'UTF8'
        CONNECTION LIMIT = -1;
        ", m_conn);
    m_conn.Open();
    m_createdb_cmd.ExecuteNonQuery();
    m_conn.Close();
    
    connStr = "Server=localhost;Port=5432;User Id=postgres;Password=enter;Database=testDb";
    m_conn = new NpgsqlConnection(connStr);
    m_createtbl_cmd = new NpgsqlCommand(
       "CREATE TABLE table1(ID CHAR(256) CONSTRAINT id PRIMARY KEY, Title CHAR)"
       , m_conn);
    m_conn.Open();
    m_createtbl_cmd.ExecuteNonQuery();
    m_conn.Close();
    

    varの使用 ここではお勧めしません。返されるタイプがわからないので使用しましたが、そうする必要があります。

    生の文字列(@)の使用に注意してください )。文字列の作成が簡単になります。

    識別子が違法でない限り、Postgresqlで二重引用符で囲まれた識別子を使用しないでください。それはあなたの人生をはるかに難しくします。



    1. 巨大なテーブルから大量のデータを削除する

    2. DatabaseConfigurationAssistantを使用したOracle12cのサンプルスキーマのインストール

    3. NHibernateで一括挿入操作を高速化

    4. OracleSQLでデュアルから10,000の一意のIDのリストを選択する方法