ITPUB??ì3
新一届的微软MVP评选已经开始,欢迎各位推荐!
ITPUB论坛 » MySQL及其它开源数据库 » 请教一个sql问题

标题: 请教一个sql问题
离线 rbible
庸者


精华贴数 0
个人空间 0
技术积分 257 (7582)
社区积分 14 (9168)
注册日期 2007-9-19
论坛徽章:1
2008北京奥运纪念徽章:皮划艇静水     
      

发表于 2008-5-11 12:59 
请教一个sql问题

现有如下代码:

DROP TABLE IF EXISTS `add`;
CREATE TABLE `add` (
  `ADDID` int(11) NOT NULL,
  `TYPE` varchar(20) default NULL,
  `COIN` int(11) default NULL,
  `DATETIME` datetime default NULL,
  `USERID` int(11) default NULL,
  PRIMARY KEY  (`ADDID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
insert  into `add`(`ADDID`,`TYPE`,`COIN`,`DATETIME`,`USERID`) values (1,'在线充值',15,'2006-01-01 00:00:00',1),(2,'个人银行充值',15,'2006-02-01 00:00:00',1),(3,'代理充值',15,'2006-03-01 00:00:00',1),(4,'在线充值',15,'2006-04-01 00:00:00',1),(5,'汇款充值',15,'2006-05-01 00:00:00',1);


执行之后,数据库列表中有add表

但该表无法打开,报错    1064 说是语法有错误

不知是哪的错误???




rbible 上传了这个附件:
2008-5-11 12:59
19MFI.jpg (9.25 KB)
 

__________________
只看该作者    顶部
离线 jinguanding
Eugene


来自 上海
精华贴数 1
个人空间 70
技术积分 2401 (655)
社区积分 79 (3901)
注册日期 2007-3-29
论坛徽章:5
现任管理团队成员2008北京奥运纪念徽章:乒乓球2008北京奥运纪念徽章:柔道生肖徽章2007版:鼠ITPUB新首页上线纪念徽章 
      

发表于 2008-5-11 13:34 
你用什么语句打开表啊。。。提示的是你SQL语句有错误嘛。。。不是表打不开


__________________
.....做人做事尽心尽力,做学问谦虚求根问底.......
......***寻MySQL方面的兼职***......
.....专业的综合布线、安防公司........................
......www.showgold.cn..............................
......上海亮金信息技术有限公司.......................
只看该作者    顶部
离线 atgc
高级会员


精华贴数 1
个人空间 0
技术积分 7947 (157)
社区积分 168 (2591)
注册日期 2004-7-22
论坛徽章:35
生肖徽章2007版:龙2008北京奥运纪念徽章:射箭2008北京奥运纪念徽章:蹦床2008北京奥运纪念徽章:跳水2008北京奥运纪念徽章:举重2008北京奥运纪念徽章:排球
2008北京奥运纪念徽章:花样游泳2008北京奥运纪念徽章:垒球2008北京奥运纪念徽章:手球2008北京奥运纪念徽章:帆船2008北京奥运纪念徽章:羽毛球生肖徽章2007版:鼠

发表于 2008-5-11 19:45 
把你的语句贴出来看看吧、、


__________________
只看该作者    顶部
离线 yueliangdao0608
斑竹
上帝他爸


来自 中国-红灯区-深圳
精华贴数 0
个人空间 0
技术积分 3995 (362)
社区积分 1471 (739)
注册日期 2005-2-25
论坛徽章:20
现任管理团队成员紫蜘蛛玉兔生肖徽章2007版:牛2008北京奥运纪念徽章:花样游泳2008北京奥运纪念徽章:击剑
2008北京奥运纪念徽章:足球2008北京奥运纪念徽章:垒球2008北京奥运纪念徽章:拳击2008北京奥运纪念徽章:手球2008北京奥运纪念徽章:自行车 

发表于 2008-5-12 11:52 
不知道你的MYSQL 是什么版本。

mysql> DROP TABLE IF EXISTS `add`;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> CREATE TABLE `add` (
    ->   `ADDID` int(11) NOT NULL,
    ->   `TYPE` varchar(20) default NULL,
    ->   `COIN` int(11) default NULL,
    ->   `DATETIME` datetime default NULL,
    ->   `USERID` int(11) default NULL,
    ->   PRIMARY KEY  (`ADDID`)
    -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.02 sec)

mysql> insert  into `add`(`ADDID`,`TYPE`,`COIN`,`DATETIME`,`USERID`) values (1,'在线充值',15,'2006-01-01 00:00:00',1),(2,'个人银行充值',15,'2006-02-01 00:00:00',1),(3,'代理充值',15,'2006-03-01 00:00:00',1),(4,'在线充值',15,'2006-04-01 00:00:00',1),(5,'汇款充值',15,'2006-05-01 00:00:00',1);
Query OK, 5 rows affected (0.00 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from `add`;
+-------+--------------+------+---------------------+--------+
| ADDID | TYPE         | COIN | DATETIME            | USERID |
+-------+--------------+------+---------------------+--------+
|     1 | 在线充值     |   15 | 2006-01-01 00:00:00 |      1 |
|     2 | 个人银行充值 |   15 | 2006-02-01 00:00:00 |      1 |
|     3 | 代理充值     |   15 | 2006-03-01 00:00:00 |      1 |
|     4 | 在线充值     |   15 | 2006-04-01 00:00:00 |      1 |
|     5 | 汇款充值     |   15 | 2006-05-01 00:00:00 |      1 |
+-------+--------------+------+---------------------+--------+
5 rows in set (0.00 sec)

mysql> show errors;
Empty set (0.00 sec)

mysql>


__________________
-------------------------------------------------------
以前搞维护-搞软件-搞网站-现在搞DBA ---
点击这里访问我的技术博客

最近在练习英语中。。。
Losing my face!
只看该作者    顶部
离线 rbible
庸者


精华贴数 0
个人空间 0
技术积分 257 (7582)
社区积分 14 (9168)
注册日期 2007-9-19
论坛徽章:1
2008北京奥运纪念徽章:皮划艇静水     
      

发表于 2008-5-14 21:53 
回复 #4 yueliangdao0608 的帖子

Server: 5.0.45-community-nt-log


__________________
只看该作者    顶部
离线 rbible
庸者


精华贴数 0
个人空间 0
技术积分 257 (7582)
社区积分 14 (9168)
注册日期 2007-9-19
论坛徽章:1
2008北京奥运纪念徽章:皮划艇静水     
      

发表于 2008-5-14 21:56 
问题已解决

是表名add的问题
应该是保留字,不能作为表名

改成add1
后就正常了


多谢楼上各位


__________________
只看该作者    顶部
离线 jinguanding
Eugene


来自 上海
精华贴数 1
个人空间 70
技术积分 2401 (655)
社区积分 79 (3901)
注册日期 2007-3-29
论坛徽章:5
现任管理团队成员2008北京奥运纪念徽章:乒乓球2008北京奥运纪念徽章:柔道生肖徽章2007版:鼠ITPUB新首页上线纪念徽章 
      

发表于 2008-5-15 09:21 
关键字是可以用的,只要使用了``符号就 可以了
但是建议不要使用关键字作为表,列,Fun,SP,TRIG等的名字


__________________
.....做人做事尽心尽力,做学问谦虚求根问底.......
......***寻MySQL方面的兼职***......
.....专业的综合布线、安防公司........................
......www.showgold.cn..............................
......上海亮金信息技术有限公司.......................
只看该作者    顶部
离线 chiou_8888



精华贴数 0
个人空间 0
技术积分 59 (24493)
社区积分 6 (14210)
注册日期 2005-4-23
论坛徽章:0
      
      

发表于 2008-5-17 17:01 
因为ADD是保留字,所以是语法结构的问题;
mysql> create table sadd (addid int(11) not null,
    -> type varchar(20) default null,coin int(11) default null,
    -> datetime datetime default null, userid int(11) default null,
    -> primary key (addid))
    -> engine=InnoDB default charset=utf8;
Query OK, 0 rows affected (0.05 sec)


__________________
空气在颤抖,仿佛天空在燃烧----啊----暴风雨就要来了
只看该作者    顶部
离线 sky000
一般会员



精华贴数 0
个人空间 0
技术积分 207 (9150)
社区积分 1 (34971)
注册日期 2004-3-3
论坛徽章:1
生肖徽章2007版:鸡     
      

发表于 2008-5-27 11:08 
虽然保留字可以通过添加``符号来使用,但是为了更规范的使用mysql,建议还是使用非保留字,呵呵!

[ 本帖最后由 sky000 于 2008-5-28 13:12 编辑 ]


__________________
只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问