none
SQL server插入数据出现的问题,请高手指点,谢谢! RRS feed

  • 问题

  • 我想往违法建设表里面插入一条记录:交办单号为201100153号。用了如下语句:Insert into 违法建设(SerialNumber) Values('201100153');可是运行之后就跳出一个对话框显示:1行被上次查询影响;点击帮助按钮,显示:已影响许多行,查询已成功执行。生成表的过程影响了指定的行。最后201100153号记录是插到了违法建设表的最后一条(倒数第二条是201100268)但是不按序列号大小排序,怎么插入,才能够在违法建设基本表按顺序显示呢?非常感谢!
    曹玲玲
    2011年5月26日 3:41

答案

  • Have to create clustered index on column SerialNumber, but why want to do that? It'll cause page split and fragmentation then affect performance. 
    2011年5月26日 3:45
  • CREATE  CLUSTERED  INDEX index_name on tablename(columnname)

    用你的表举例就是

    CREATE  CLUSTERED  INDEX IX违法建设_SerialNumber on  违法建设(SerialNumber)

    当然最好不要用中文名

    但是要保证该表没有其它CLUSTERED索引

    2011年5月26日 7:05

全部回复

  • Have to create clustered index on column SerialNumber, but why want to do that? It'll cause page split and fragmentation then affect performance. 
    2011年5月26日 3:45
  • rimiao 谢谢您的无私帮助!我做了一个我们违法建设汇总信息登记表,并和另外一个指挥中心登记汇总表通过交办单序列号关联,建立了一个违法建设的视图,需要按交办单的序列号排列(按违法建设接诉的时间排列的)。我想请教您如何建立clustered index呢?查阅了高教出版社王珊出的数据库系统概论也没找到呢


    曹玲玲
    2011年5月26日 6:43
  • CREATE  CLUSTERED  INDEX index_name on tablename(columnname)

    用你的表举例就是

    CREATE  CLUSTERED  INDEX IX违法建设_SerialNumber on  违法建设(SerialNumber)

    当然最好不要用中文名

    但是要保证该表没有其它CLUSTERED索引

    2011年5月26日 7:05
  • 谢谢您的无私帮助。已经按您说的语句 执行完了,也运行出了想要的结果!
    曹玲玲
    2011年5月26日 9:10
  • rimiao 谢谢您的无私帮助!我做了一个我们违法建设汇总信息登记表,并和另外一个指挥中心登记汇总表通过交办单序列号关联,建立了一个违法建设的视图,需要按交办单的序列号排列(按违法建设接诉的时间排列的)。我想请教您如何建立clustered index呢?查阅了高教出版社王珊出的数据库系统概论也没找到呢


    曹玲玲
    You should use 'order by SerialNumber' clause in the view  to sort resultset, clustered index will not guarantee the order, especially when parallelism kicks in.
    2011年5月26日 14:19