コード例 #1
0
ファイル: ODBCDriver.cs プロジェクト: coyove/Luavit
        private string GetDatabaseName()
        {
            short num = 1000;

            System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder((int)num);
            short fInfoType = 17;
            short num2      = 0;

            ODBCDriver.SQLGetInfo(this.m_ConnectionHandle, fInfoType, stringBuilder, num, out num2);
            return(stringBuilder.ToString());
        }
コード例 #2
0
ファイル: ODBCDriver.cs プロジェクト: coyove/Luavit
        private bool CheckConnectionString()
        {
            short num = 1000;

            System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder((int)num);
            short fInfoType = 2;
            short num2      = 0;

            ODBCDriver.SQLGetInfo(this.m_ConnectionHandle, fInfoType, stringBuilder, num, out num2);
            string text = stringBuilder.ToString();

            if (!string.IsNullOrEmpty(text))
            {
                this.m_ConnectionString = string.Format("DSN={0};", text);
            }
            string databaseName = this.GetDatabaseName();

            Log.WriteLine("DatabaseName: " + databaseName);
            string a;

            if ((a = databaseName) != null)
            {
                //if ((a != "Microsoft SQL Server"))
                //{
                //                // *** Coyove Patched ***
                //	// if ((a != "ACCESS"))
                //                if (a != "MariaDB")
                //	{
                //		if ((a != "EXCEL"))
                //		{
                //                        Log.WriteError("Return 1");
                //                        return false;
                //		}
                //		DatabaseManager.isExcelExport = true;
                //		this.m_InvalidCharacters = " #".ToCharArray();
                //		this.m_DataTypeMap.Add(DataType.DOUBLE, "double");
                //		this.m_DataTypeMap.Add(DataType.TEXT, "TEXT");
                //		this.m_DataTypeMap.Add(DataType.INTEGER, "int");
                //	}
                //	else
                //	{
                DatabaseManager.isExcelExport = false;
                this.m_InvalidCharacters      = ".!`[]".ToCharArray();
                this.m_DataTypeMap.Add(DataType.DOUBLE, "DOUBLE PRECISION");
                this.m_DataTypeMap.Add(DataType.TEXT, "TEXT");
                this.m_DataTypeMap.Add(DataType.INTEGER, "int");
                //	}
                //}
                //else
                //{
                //	DatabaseManager.isExcelExport = false;
                //	this.m_InvalidCharacters = "-/ ".ToCharArray();
                //	this.m_KeywordsMap.Add("Columns", "Columns1");
                //	this.m_DataTypeMap.Add(DataType.DOUBLE, "float");
                //	this.m_DataTypeMap.Add(DataType.TEXT, "nvarchar(255)");
                //	this.m_DataTypeMap.Add(DataType.INTEGER, "int");
                //}
                return(true);
            }
            // Log.WriteError("Return 2");
            return(false);
        }