创建动态SQL Server数据库表的解决办法
2022-11-12 09:47:43
内容摘要
这篇文章主要为大家详细介绍了创建动态SQL Server数据库表的简单示例,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!以下是引用片段:
代码
文章正文
这篇文章主要为大家详细介绍了创建动态SQL Server数据库表的简单示例,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
以下是引用片段:代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | <code> ImportsSystem.Data ImportsSystem.Data.SqlClient PublicClassForm1 InheritsSystem.Windows.Forms.Form PrivateConnectionStringAsString= "DataSource=.;InitialCatalog=;UserId=sa;Password=;" PrivatereaderAsSqlDataReader=Nothing PrivateconnAsSqlConnection=Nothing PrivatecmdAsSqlCommand=Nothing PrivateAlterTableBtnAsSystem.Windows.Forms.Button PrivatesqlAsString=Nothing PrivateCreateOthersBtnAsSystem.Windows.Forms.Button #Region "Windows窗体设计器生成的代码" '窗体重写处置以清理组件列表。 ProtectedOverloadsOverridesSubDispose(ByValdisposingAsBoolean) IfdisposingThen IfNot(componentsIsNothing)Then components.Dispose() EndIf EndIf MyBase.Dispose(disposing) EndSub PublicSubNew() MyBase.New() InitializeComponent() EndSub PrivatecomponentsAsSystem.ComponentModel.IContainer FriendWithEventsDataGrid1AsSystem.Windows.Forms.DataGrid FriendWithEventsCreateDBBtnAsSystem.Windows.Forms.Button FriendWithEventsCreateTableBtnAsSystem.Windows.Forms.Button FriendWithEventsCreateSPBtnAsSystem.Windows.Forms.Button FriendWithEventsCreateViewBtnAsSystem.Windows.Forms.Button FriendWithEventsbtnAlterTableAsSystem.Windows.Forms.Button FriendWithEventsbtnCreateOthersAsSystem.Windows.Forms.Button FriendWithEventsbtnDropTableAsSystem.Windows.Forms.Button FriendWithEventsbtnViewDataAsSystem.Windows.Forms.Button FriendWithEventsbtnViewSPAsSystem.Windows.Forms.Button FriendWithEventsbtnViewViewAsSystem.Windows.Forms.Button PrivateSubInitializeComponent() </code> |
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | <code>Me.CreateDBBtn=NewSystem.Windows.Forms.Button() Me.CreateTableBtn=NewSystem.Windows.Forms.Button() Me.CreateSPBtn=NewSystem.Windows.Forms.Button() Me.CreateViewBtn=NewSystem.Windows.Forms.Button() Me.btnAlterTable=NewSystem.Windows.Forms.Button() Me.btnCreateOthers=NewSystem.Windows.Forms.Button() Me.btnDropTable=NewSystem.Windows.Forms.Button() Me.btnViewData=NewSystem.Windows.Forms.Button() Me.btnViewSP=NewSystem.Windows.Forms.Button() Me.btnViewView=NewSystem.Windows.Forms.Button() Me.DataGrid1=NewSystem.Windows.Forms.DataGrid() CType(Me.DataGrid1,System.ComponentModel.ISupportInitialize).BeginInit() Me.SuspendLayout() ' 'CreateDBBtn ' Me.CreateDBBtn.Location=NewSystem.Drawing.Point(19,9) Me.CreateDBBtn.Name= "CreateDBBtn" Me.CreateDBBtn.Size=NewSystem.Drawing.Size(104,23) Me.CreateDBBtn.TabIndex=0 Me.CreateDBBtn.Text= "创建数据库" ' 'CreateTableBtn ' Me.CreateTableBtn.Location=NewSystem.Drawing.Point(139,9) Me.CreateTableBtn.Name= "CreateTableBtn" Me.CreateTableBtn.TabIndex=1 Me.CreateTableBtn.Text= "创建表" ' 'CreateSPBtn ' Me.CreateSPBtn.Location=NewSystem.Drawing.Point(230,9) Me.CreateSPBtn.Name= "CreateSPBtn" Me.CreateSPBtn.Size=NewSystem.Drawing.Size(104,23) Me.CreateSPBtn.TabIndex=2 Me.CreateSPBtn.Text= "创建存储过程" ' 'CreateViewBtn ' Me.CreateViewBtn.Location=NewSystem.Drawing.Point(350,9) Me.CreateViewBtn.Name= "CreateViewBtn" Me.CreateViewBtn.TabIndex=3中国网管联盟www.bitscn.com Me.CreateViewBtn.Text= "创建视图" ' 'btnAlterTable ' Me.btnAlterTable.Location=NewSystem.Drawing.Point(441,9) Me.btnAlterTable.Name= "btnAlterTable" Me.btnAlterTable.TabIndex=4 Me.btnAlterTable.Text= "修改表" </code> |
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | <code> 'btnCreateOthers ' Me.btnCreateOthers.Location=NewSystem.Drawing.Point(17,43) Me.btnCreateOthers.Name= "btnCreateOthers" Me.btnCreateOthers.Size=NewSystem.Drawing.Size(104,23) Me.btnCreateOthers.TabIndex=5 Me.btnCreateOthers.Text= "创建规则和索引" feedom.net ' 'btnDropTable ' Me.btnDropTable.Location=NewSystem.Drawing.Point(138,43) Me.btnDropTable.Name= "btnDropTable" Me.btnDropTable.TabIndex=6 Me.btnDropTable.Text= "删除表" ' 'btnViewData ' Me.btnViewData.Location=NewSystem.Drawing.Point(351,43) Me.btnViewData.Name= "btnViewData" Me.btnViewData.TabIndex=7 Me.btnViewData.Text= "查看数据" ' 'btnViewSP ' Me.btnViewSP.Location=NewSystem.Drawing.Point(230,43) feedom.net Me.btnViewSP.Name= "btnViewSP" Me.btnViewSP.Size=NewSystem.Drawing.Size(104,23) Me.btnViewSP.TabIndex=8 Me.btnViewSP.Text= "查看存储过程" ' 'btnViewView ' Me.btnViewView.Location=NewSystem.Drawing.Point(443,43) Me.btnViewView.Name= "btnViewView" Me.btnViewView.TabIndex=9 Me.btnViewView.Text= "查看视图" ' 'DataGrid1 ' Me.DataGrid1.DataMember= "" Me.DataGrid1.HeaderForeColor=System.Drawing.SystemColors.ControlText Me.DataGrid1.Location=NewSystem.Drawing.Point(20,76)54com.cn Me.DataGrid1.Name= "DataGrid1" Me.DataGrid1.Size=NewSystem.Drawing.Size(500,183) Me.DataGrid1.TabIndex=10 ' 'Form1 ' Me.AutoScaleBaseSize=NewSystem.Drawing.Size(5,13) Me.ClientSize=NewSystem.Drawing.Size(538,281) Me.Controls.AddRange(NewSystem.Windows.Forms.Control(){Me.DataGrid1,Me.btnViewView,_ Me.btnViewSP,Me.btnViewData,Me.btnDropTable,Me.btnCreateOthers,Me.btnAlterTable,_ </code> |
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | <code> Me.CreateViewBtn,Me.CreateSPBtn,Me.CreateTableBtn,Me.CreateDBBtn}) Me.Name= "Form1" Me.Text= "动态创建SQLServer数据库、表、存储过程等架构信息" CType(Me.DataGrid1,System.ComponentModel.ISupportInitialize).EndInit() Me.ResumeLayout(False) EndSub #EndRegion '创建数据库 PrivateSubCreateDBBtn_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesCreateDBBtn.Click conn=NewSqlConnection(ConnectionString) '打开连接 Ifconn.State<>ConnectionState.OpenThen conn.Open() EndIf 'MyDataBase为数据库名称 DimsqlAsString= "CREATEDATABASEMyDataBaseONPRIMARY(Name=MyDataBase_data,filename=" +_ 54com.cn "'D:\MyDataBase.mdf',size=3," + "maxsize=5,filegrowth=10%)logon" + "(name=MyDataBase_log," +_ "filename='D:\MyDataBase.ldf',size=3," + "maxsize=20,filegrowth=1)" cmd=NewSqlCommand(sql,conn) Try cmd.ExecuteNonQuery() CatchaeAsSqlException MessageBox.Show(ae.Message.ToString()) EndTry EndSub '创建表 PrivateSubCreateTableBtn_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesCreateTableBtn.Click conn=NewSqlConnection(ConnectionString) '打开连接 Ifconn.State=ConnectionState.OpenThen conn.Close() EndIf ConnectionString= "DataSource=.;InitialCatalog=MyDataBase;UserId=sa;Password=;" conn.ConnectionString=ConnectionString conn.Open() sql= "CREATETABLEmyTable" + "(myIdINTEGERCONSTRAINTPKeyMyIdPRIMARYKEY," +_ "myNameCHAR(50)NOTNull,myAddressCHAR(255),myValuesFLOAT)" cmd=NewSqlCommand(sql,conn) Try cmd.ExecuteNonQuery() '添加纪录 54com.cn sql= "INSERTINTOmyTable(myId,myName,myAddress,myValues)" +_ "VALUES(1001,_'【孟宪会之精彩世界】之一','http://xml.sz.luohuedu.net/',100)" cmd=NewSqlCommand(sql,conn) cmd.ExecuteNonQuery() sql= "INSERTINTOmyTable(myId,myName,myAddress,myValues)" +_ "VALUES(1002,'【孟宪会之精彩世界】之二','http://www.erp800.com/net_lover/',99)" </code> |
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | <code> cmd=NewSqlCommand(sql,conn) cmd.ExecuteNonQuery() sql= "INSERTINTOmyTable(myId,myName,myAddress,myValues)" +_ "VALUES(1003,'【孟宪会之精彩世界】之三','http://xml.sz.luohuedu.net/',99)" cmd=NewSqlCommand(sql,conn) cmd.ExecuteNonQuery() sql= "INSERTINTOmyTable(myId,myName,myAddress,myValues)" +_ "VALUES(1004,'【孟宪会之精彩世界】之四','http://www.erp800.com/net_lover/',100)" cmd=NewSqlCommand(sql,conn) cmd.ExecuteNonQuery() CatchaeAsSqlException MessageBox.Show(ae.Message.ToString()) EndTry EndSub '创建存储过程 PrivateSubCreateSPBtn_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesCreateSPBtn.Click sql= "CREATEPROCEDUREmyProcAS" + "SELECTmyName,myAddressFROMmyTableGO" ExecuteSQLStmt(sql) EndSub '创建视图 PrivateSubCreateViewBtn_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesCreateViewBtn.Click sql= "CREATEVIEWmyViewASSELECTmyNameFROMmyTable" ExecuteSQLStmt(sql) EndSub '修改表 PrivateSubbtnAlterTable_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ 54com.cn HandlesbtnAlterTable.Click sql= "ALTERTABLEMyTableADDnewColdatetimeNOTNULLDEFAULT(getdate())" ExecuteSQLStmt(sql) EndSub '创建规则和索引 PrivateSubbtnCreateOthers_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesbtnCreateOthers.Click sql= "CREATEUNIQUEINDEX" + "myIdxONmyTable(myName)" ExecuteSQLStmt(sql) sql= "CREATERULEmyRule" + "AS@myValues>=90AND@myValues<9999" ExecuteSQLStmt(sql) EndSub '删除表 PrivateSubbtnDropTable_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesbtnDropTable.Click DimsqlAsString= "DROPTABLEMyTable" ExecuteSQLStmt(sql) EndSub </code> |
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | <code> '浏览表数据 PrivateSubbtnViewData_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesbtnViewData.Click conn=NewSqlConnection(ConnectionString) Ifconn.State=ConnectionState.OpenThen conn.Close() EndIf ConnectionString= "DataSource=.;InitialCatalog=MyDataBase;UserId=sa;Password=;" conn.ConnectionString=ConnectionString conn.Open() DimdaAsNewSqlDataAdapter( "SELECT*FROMmyTable" ,conn) DimdsAsNewDataSet( "myTable" ) da.Fill(ds, "myTable" ) DataGrid1.DataSource=ds.Tables( "myTable" ).DefaultView EndSub '浏览存储过程 PrivateSubbtnViewSP_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesbtnViewSP.Click conn=NewSqlConnection(ConnectionString) Ifconn.State=ConnectionState.OpenThen conn.Close() EndIf ConnectionString= "DataSource=.;InitialCatalog=MyDataBase;UserId=sa;Password=;" conn.ConnectionString=ConnectionString conn.Open() DimdaAsNewSqlDataAdapter( "myProc" ,conn) DimdsAsNewDataSet( "SP" ) da.Fill(ds, "SP" ) DataGrid1.DataSource=ds.DefaultViewManager EndSub '浏览视图 PrivateSubbtnViewView_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)_ HandlesbtnViewView.Click conn=NewSqlConnection(ConnectionString) Ifconn.State=ConnectionState.OpenThen conn.Close() EndIf ConnectionString= "DataSource=.;InitialCatalog=MyDataBase;UserId=sa;Password=;" conn.ConnectionString=ConnectionString conn.Open() DimdaAsNewSqlDataAdapter( "SELECT*FROMmyView" ,conn) DimdsAsNewDataSet() da.Fill(ds) DataGrid1.DataSource=ds.DefaultViewManager EndSub PrivateSubExecuteSQLStmt(ByValsqlAsString) conn=NewSqlConnection(ConnectionString) '打开连接 Ifconn.State=ConnectionState.OpenThen conn.Close() EndIf ConnectionString= "DataSource=.;InitialCatalog=MyDataBase;UserId=sa;Password=;" conn.ConnectionString=ConnectionString conn.Open() cmd=NewSqlCommand(sql,conn) Try cmd.ExecuteNonQuery() CatchaeAsSqlException MessageBox.Show(ae.Message.ToString()) EndTry EndSub EndClass </code> |
注:关于创建动态SQL Server数据库表的简单示例的内容就先介绍到这里,更多相关文章的可以留意
代码注释