大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在创建表的时候id应该是主键CREATE TABLE `test`(
创新互联是一家专业提供吴兴企业网站建设,专注与网站制作、网站建设、H5网站设计、小程序制作等业务。10年已为吴兴众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
`id` int(10) NOT NULL auto_increment,
`uid` varchar(10) NOT NULL default ’0‘,
`regdate` date NOT NULL,
`remark` text,
PRIMARY KEY (`id`)
)ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=5 ;
把`uid` varchar(10) not null default '0';这个0两边是单引号。您原来写的那样代表的整形的,加上引号代表的是字符串型的。
您再试一下。祝你成功~~~
update userb set name='wangnann',sex='男',age='22',class='2010级',like='旅游,打球,游泳',lianxi='12333322211' where id='1' 报错的看看。
1.没办法的办法,ctrl+c,完全退出
2.可以输入\c 废弃本次语句,若输入后没效果是因为未保持当前输入语句完整匹配
如:
mysql show tables';
'
' \c
' '\c
mysql
我们运用mysql的时候经常会遇到1064错误,那么这个错误到底怎么解决呢?下面我给大家分享一下。
01
首先我们在mysql数据库中准备一个数据表,并且往数据表中插入数据,如下图所示
02
然后我们编写如下图所示的查询语句并且执行,你就会发现执行结果报出了1064错误
03
回到查询语句中我们发现Select单词拼写错误了,如下图所示,SQL语句的语法错误都会导致1064错误的出现
04
最后解决这个错误就很简单了,我们只需要把SQL语句写正确即可,如下图所示
一、问题原因
mysql数据库的存储过程创建语句之中需要使用begin表示存储过程要执行的语句从这里开始,在结尾使用end表示存储过程的语句要结束了。而在mysql数据库之中无论是查询还是添加语句都要使用分号去分隔,但是在存储过程之中创建sql语句的时候却被mysql数据库的编译器把分号当做了结束语句,没有end就被检测成语法错误了。
二、解决方法
一般来说上面这个问题都是因为mysql数据库版本所导致的,如果确定语句没有错误的话就要更新版本或者将语句的结束符改成别的符号,只要能够让mysql数据库编译器解析到end就可以了。使用delimiter即可更改sql语句结束符,示例如下:
delimiter // --更改结束符create procedure course_id_name(in cid varchar(20))beginselect namefrom coursewhere id = cid;end//delimiter ; --将结束符换回分号
以上就是关于“mysql数据库存储过程语法报错为什么?原因和解决方法看这里”的全部内容了,想要了解更多python的实用知识和代码示例可以持续关注这个频道,每次更新都会有很多新的知识技术分享给大家。