Oct
18
某天发完版本,日本那过来紧急邮件,作成安装文件时SQL执行失败
按照安装文件中SQL文件执行顺序,执行到如下部分时,提示约束已存在
反复检查了几个SQL文件中所有语句,反复确认文件中有且只有一个名为[DF__TTL_TOTAL__iDisc__77FFC2B3]的约束。百思不得其解。后来执行到此创建表语句的前一段语句,查询系统视图default_constraints,果然发现已存在名为[DF__TTL_TOTAL__iDisc__77FFC2B3]的约束,有点纳闷。
仔细推敲后,大概估摸出出错的原因。平时写SQL语句并不会指定约束名,约束名是系统自动生成的,且最后面的77FFC2B3为系统为了防止约束名重复生成的后缀字符串。本次项目对应中,在另外一个SQL文件的一个语句中增加了两个字段,现存的SQL语句中建立表的地方有部分没有指定约束名,导致生成的约束名重复。删除全部约束名改为自动生成,问题解决。
按照安装文件中SQL文件执行顺序,执行到如下部分时,提示约束已存在
CREATE TABLE [dbo].[TTL_TOTALONLINEDISCOUNT](
--......
[iDiscountAmount] [int] NOT NULL CONSTRAINT [DF__TTL_TOTAL__iDisc__77FFC2B3] DEFAULT ((0)),
--......
)
--......
[iDiscountAmount] [int] NOT NULL CONSTRAINT [DF__TTL_TOTAL__iDisc__77FFC2B3] DEFAULT ((0)),
--......
)
反复检查了几个SQL文件中所有语句,反复确认文件中有且只有一个名为[DF__TTL_TOTAL__iDisc__77FFC2B3]的约束。百思不得其解。后来执行到此创建表语句的前一段语句,查询系统视图default_constraints,果然发现已存在名为[DF__TTL_TOTAL__iDisc__77FFC2B3]的约束,有点纳闷。
仔细推敲后,大概估摸出出错的原因。平时写SQL语句并不会指定约束名,约束名是系统自动生成的,且最后面的77FFC2B3为系统为了防止约束名重复生成的后缀字符串。本次项目对应中,在另外一个SQL文件的一个语句中增加了两个字段,现存的SQL语句中建立表的地方有部分没有指定约束名,导致生成的约束名重复。删除全部约束名改为自动生成,问题解决。
Mar
6
下午机器重启后再打开数据库,立刻提示:"エラー 1069:ログオンに失敗したため、サービスを開始できませんでした",一直找不到是什么原因.后来想起来是刚讲新装的机器加入到公司的域,修改了用户名密码,导致SQL Server服务不能正常登录
SQL Server 1069:由于登录失败而无法启动服务
解决方法是在服务里找到MSSQLSERVER,右键属性,选择"登录"选项卡,填写正确的管理员帐号和密码,重启MSSQLSERVER服务即可
PS:顺祝今天博客量访问超过100W
SQL Server 1069:由于登录失败而无法启动服务
解决方法是在服务里找到MSSQLSERVER,右键属性,选择"登录"选项卡,填写正确的管理员帐号和密码,重启MSSQLSERVER服务即可
PS:顺祝今天博客量访问超过100W
May
26
今天周六也要上班,凄惨啊.JCS那边的一个项目,比较紧急,让我过去做技术支持,他们忙不过来,懒觉没的睡了.做不了猪了
刚到公司,发现Blog打不开了.提示sql语句出错,MySQL返回错误 can't open file *.MYI,以为是被人搞了,后来打开几个相关页面,又进FTP看了下文件,分析估计程序还是正常的,也没被人整或者黑了什么的.再打开http://*/phpmyadmin进入,发现一切正常,可是打开*_blog数据库的时候,*_blogs表显示正在使用,不可浏览,不可查看结构,什么表数据大小数据统计等都没有.一片空白.感觉有点纳闷啊.不会是数据库被搞了吧,应该不可能.估计还是数据库出了点问题.
OK,打开*_blogs表,同样返回的是#1016 can't open file错误.
打开SQL窗口,输入CHECK TABLE *_blogs,提示有1个警告,1个损坏,2个错误.
找到问题所在就好办了,打开SQL窗口,输入 REPAIR TABLE *_blogs
再回到数据库浏览页,所有表一切正常,刷新blog页面,也正常了,搞定,hoho,可以安心工作去了.

刚到公司,发现Blog打不开了.提示sql语句出错,MySQL返回错误 can't open file *.MYI,以为是被人搞了,后来打开几个相关页面,又进FTP看了下文件,分析估计程序还是正常的,也没被人整或者黑了什么的.再打开http://*/phpmyadmin进入,发现一切正常,可是打开*_blog数据库的时候,*_blogs表显示正在使用,不可浏览,不可查看结构,什么表数据大小数据统计等都没有.一片空白.感觉有点纳闷啊.不会是数据库被搞了吧,应该不可能.估计还是数据库出了点问题.
OK,打开*_blogs表,同样返回的是#1016 can't open file错误.
打开SQL窗口,输入CHECK TABLE *_blogs,提示有1个警告,1个损坏,2个错误.
找到问题所在就好办了,打开SQL窗口,输入 REPAIR TABLE *_blogs
再回到数据库浏览页,所有表一切正常,刷新blog页面,也正常了,搞定,hoho,可以安心工作去了.
Jan
5
额,是的,仍然不是那么很明白
虽然两个都常用,而且好象用的时候没考虑,就选了其中一个
但是静下来思考下,二者究竟有什么区别
汗,除了别人都说的那些什么定义style等明显的,深层次上,我完全看不出来区别
转个文章(不过我仍然觉得写不咋,和我目前理解的差不多,不是我想要的哈):
如果SQL Server程序员想将表达式从一种换为另一种,他可以从SQL Server 7和2000中自带的两种功能中做出选择。在存储过程或其他情况下,我们常常需要将数据从datetime型转化成varchar型;CONVERT和CAST就可以用于这种情况。
由于SQL Server提供两种功能,因此
虽然两个都常用,而且好象用的时候没考虑,就选了其中一个
但是静下来思考下,二者究竟有什么区别
汗,除了别人都说的那些什么定义style等明显的,深层次上,我完全看不出来区别

转个文章(不过我仍然觉得写不咋,和我目前理解的差不多,不是我想要的哈):
如果SQL Server程序员想将表达式从一种换为另一种,他可以从SQL Server 7和2000中自带的两种功能中做出选择。在存储过程或其他情况下,我们常常需要将数据从datetime型转化成varchar型;CONVERT和CAST就可以用于这种情况。
由于SQL Server提供两种功能,因此




,如下:
