.NET动态创建数据表的示例

SqlConnection conn = new SqlConnection();
conn.ConnectionString 
= "Data Source=PIV2400;Initial Catalog=OfficeInformation;Integrated Security=True";
conn.Open();
SqlCommand cmd 
= new SqlCommand();
cmd.Connection 
= conn; 
cmd.CommandText 
= "create table userinfo(id int,username char(8) )";
cmd.ExecuteNonQuery(); 

 

其中
连接字符串格式为:
Data Source=[服务器名];Initial Catalog=[数据库名];Integrated Security=True
创建数据表执行命令格式:
Create table [表名] ( [字段名1 数据类型1]  [,字段名2 数据类型2]  [....]  )

 

一、使用存储过程动态创建数据表。

/*
过程功能:存储过程动态创建数据表
注意事项:连接Sql语句的“单引号”
创建日期:2006-09-01
创建人:SkyJacker
Blog:Http://blog.csdn.net/skyjacker
*/
CREATE PROCEDURE  [dbo].[CreateTable]
@TableName varchar(255)
AS
 begin
 if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].['+@TableName+']') and

OBJECTPROPERTY(id, N'IsUserTable') = 1)
  exec('drop table  '+@TableName);

exec('
CREATE TABLE [dbo].['+@TableName+'] (
 [ID] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
 [Name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]   ')
 end;
GO

执行 exec  CreateTable 'TabHello'


二、插入新记录。
/*
过程功能:
   插入新记录
   如果已存在则不插入
   不存在则插入
注意事项:应该有更好的方法
创建日期:2006-09-01
创建人:SkyJacker
Blog:Http://blog.csdn.net/skyjacker
*/
CREATE PROCEDURE   LyrTypeTable
@MapLayer Varchar(255),
@Type varChar(255),
@DrawTool varchar(255)
as
begin
  declare @RecordNum  integer
  set @RecordNum=0
  select top 1  MapLayer  from TabTest  where MapLayer = @MapLayer
 
  set  @RecordNum=@@rowcount
  if (@RecordNum=0) 
         insert into  TabTest(MapLayer,Type,DrawTool) values(@MapLayer,@Type,@DrawTool)
end;
GO

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/skyjacker/archive/2006/09/02/1159010.aspx

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值