让powerdesigner生成的sql语句在mysql上成功执行
2012-07-28 12:14
555 查看
花了大概半天的时间学习了下powerdesigner的用法,等我生成sql语句时,发现在生成的sql语句根本不能在mysql中执行,当然我的dbms是设置了mysql的。
在网上搜索一通,也没有什么好的解决方法。自己摸索了一下,已经搞定了。
首先说明下,我生成的sql语句不能在mysql上执行,是因为表中的主键包含了自增的属性,所以生成的代码不能在mysql上执行,错误如下:
![](http://my.csdn.net/uploads/201207/28/1343448699_8548.jpg)
就是说自增的那个列必须是主键,很显然是因为powerdsigner生成的代码不能被mysql正确的执行的,查看powerdesigner生成的代码如下:
我想说powerdesigner的人性化不是很好一些设置项好难找,不过这也很好理解,大软件功能复杂,就有这个特点了,毕竟人家强大。下面解决这个问题。
在PDM的布局上(Diagram)双击一个表,弹出下列框:
![](http://my.csdn.net/uploads/201207/28/1343449056_6891.jpg)
然后点击preview标签页,出现下列界面:
![](http://my.csdn.net/uploads/201207/28/1343449380_6651.JPG)
点击图中红色圈起来的图标,这个图标就是关键了,点击出现下面的窗口:
![](http://my.csdn.net/uploads/201207/28/1343449411_7953.jpg)
好,就是上图中红色圈中的内容,选中inside,然后确定就可以了。
至此,powerdesigner生成的sql代码可以顺利的在mysql中执行了,现在生成的代码如下:
问题解决。
在网上搜索一通,也没有什么好的解决方法。自己摸索了一下,已经搞定了。
首先说明下,我生成的sql语句不能在mysql上执行,是因为表中的主键包含了自增的属性,所以生成的代码不能在mysql上执行,错误如下:
![](http://my.csdn.net/uploads/201207/28/1343448699_8548.jpg)
就是说自增的那个列必须是主键,很显然是因为powerdsigner生成的代码不能被mysql正确的执行的,查看powerdesigner生成的代码如下:
create table scnu_homework_answer ( answer_id bigint not null auto_increment tenant_id bigint not null answer_iscorrected smallint not null answer_tea_isdeleted smallint not null answer_stu_isdeleted smallint not null ); alter table scnu_homework_answer add primary key (answer_id);可以发现,表的自增属性是先设置的,但是表的主键的自增是在表建立之后进行的,所以mysql才会报错。知道原因,那然后就是解决问题了。
我想说powerdesigner的人性化不是很好一些设置项好难找,不过这也很好理解,大软件功能复杂,就有这个特点了,毕竟人家强大。下面解决这个问题。
在PDM的布局上(Diagram)双击一个表,弹出下列框:
![](http://my.csdn.net/uploads/201207/28/1343449056_6891.jpg)
然后点击preview标签页,出现下列界面:
点击图中红色圈起来的图标,这个图标就是关键了,点击出现下面的窗口:
![](http://my.csdn.net/uploads/201207/28/1343449411_7953.jpg)
好,就是上图中红色圈中的内容,选中inside,然后确定就可以了。
至此,powerdesigner生成的sql代码可以顺利的在mysql中执行了,现在生成的代码如下:
create table scnu_homework_scores ( scores_id bigint not null auto_increment , primary key (scores_id) );可以看到主键以inside的方式生成了。
问题解决。
相关文章推荐
- 让powerdesigner生成的sql语句在mysql上成功执行
- powerdesigner 16.5 生成的sql语句在mysql数据库无法成功执行
- mysql 动态生成sql语句执行方法,表格重新产生排序
- Mysql定时执行任务,执行批量的sql语句 并且查看已经生成的定时事件
- MySql执行sql语句相关
- 对多个mysql的一部分库进行执行sql语句
- 使用C语言访问MySQL数据 —— 执行SQL语句(1)
- SQL语句执行 -- SQL语句的生成 -- Java的StringBuffer类
- powerdesigner 生成mysql sql 的COMMENT注释
- PowerDesigner生成注释以及对应数据库的sql语句
- MySQL查看SQL语句执行效率和mysql几种性能测试的工具
- [go] database/sql包执行生成的SQL语句,遇到Incorrect Integer错误
- 设置mysql在执行没where条件的sql语句时提醒
- [转] 在 MySQL 数据库中使用 C 执行 SQL语句
- mysql 命令行执行sql语句
- mysql 分析查找执行效率慢的SQL语句
- 快速生成SQL建表语句(不修改直接执行)
- mysql 查询执行最多的sql 语句
- 【原创】3. MYSQL++ Query类型与SQL语句执行过程(非template与SSQLS版本)
- 【Mysql】在mysq中抓取正在l执行的sql语句方法