예제 #1
0
        public static void ImportDataTableTest()
        {
            PFSQLServer db = new PFSQLServer();
            string      connectionString = string.Empty;

            try
            {
                _msg.Length = 0;
                _msg.Append("ImportDataTableTest started ...");
                Program._messageLog.WriteLine(_msg.ToString());

                db.ServerName             = _frm.txtServerName.Text;
                db.DatabaseName           = _frm.txtDatabaseName.Text;
                db.UseIntegratedSecurity  = _frm.chkUseIntegratedSecurity.Checked;
                db.AsynchronousProcessing = _frm.chkUseAsyncProcessing.Checked;
                db.ApplicationName        = _frm.txtApplicationName.Text;
                db.WorkstationId          = _frm.txtWorkstationId.Text;
                db.Username = _frm.txtUsername.Text;
                db.Password = _frm.txtPassword.Text;

                connectionString = db.ConnectionString;



                db.OpenConnection();

                StringBuilder sql        = new StringBuilder();
                DataTable     dt         = _frm.keyValsDataSet.Tables["dbo.KeyValTable"];
                string        schemaName = "dbo";
                string        tableName  = "KeyValTable";


                //first delete table if it already exists
                _msg.Length = 0;
                _msg.Append("\r\nTable ");
                _msg.Append(dt.TableName);
                if (db.TableExists(schemaName, tableName))
                {
                    db.DropTable(schemaName, tableName);
                    if (db.TableExists(schemaName, tableName) == false)
                    {
                        _msg.Append(" dropped.");
                    }
                    else
                    {
                        _msg.Append(" drop failed.");
                    }
                }
                else
                {
                    _msg.Append(" does not exist.");
                }

                Program._messageLog.WriteLine(_msg.ToString());

                Program._messageLog.WriteLine("\r\nCreating a table in the database ...");

                //create the table
                db.CreateTable(dt);

                db.ImportDataFromDataTable(dt, 1000);

                db.CloseConnection();
            }
            catch (System.Exception ex)
            {
                _msg.Length = 0;
                _msg.Append(AppGlobals.AppMessages.FormatErrorMessage(ex));
                Program._messageLog.WriteLine(_msg.ToString());
                AppMessages.DisplayErrorMessage(_msg.ToString(), _saveErrorMessagesToAppLog);
            }
            finally
            {
                _msg.Length = 0;
                _msg.Append("... ImportDataTableTest finished.");
                Program._messageLog.WriteLine(_msg.ToString());
            }
        }