SqlServer转mysql 字段注释sql脚本

SqlServer转mysql 字段注释sql脚本,第1张

SELECT 'alter table ' + LOWER(dname) + ' modify column `' + aname + '` ' + bname

+ '(' + RTRIM(CONVERT(char, COLUMNPROPERTY(aid,aname,'PRECISION')) )  + ') comment ''' + RTRIM(REPLACE(CONVERT(char, gvalue), '''', '')) + ''';'

FROM syscolumns a

left join systypes b on axtype=bxusertype

inner join sysobjects d on aid=did and dxtype='U' and dname<>'dtproperties'

left join sysextended_properties g on aid=gmajor_id AND acolid=gminor_id

where bname is not null

AND gVALUE is not null

order by aid,acolorder

问题: 1、SqlServer 的image类型需要转为mysql的Blob类型

BLOB类型,用于存储二进制数据。 

MySQL中,BLOB是个类型系列,包括:TinyBlob、Blob、MediumBlob、LongBlob,

最大存储分别为:

TinyBlob 最大 255

Blob 最大 65K

MediumBlob 最大 16M

LongBlob 最大 4G;

mmsql的image可以存储;mysql的blob可以存储、文档等,功能更加强大。

2、datetime(23) -> datetime(0)

用JDBC连接数据库,然后用sql语句。要导入mysql的驱动包。

import javasql;

public class TestMySql {

static Connection con = null; // 声明Connection对象

static Statement sql = null;

static ResultSet res = null;

public static void main(String[] args) {

TestMySql c = new TestMySql();

con = cgetConnection();

try {

sql = concreateStatement();

res = sqlexecuteQuery("select from dept");

//sql语句,我数据库里有张dept表

while (resnext()) {//输出结果

Systemoutprint(resgetString(1) + "<——>");

Systemoutprint(resgetString(2) + "<——>");

Systemoutprint(resgetString(3) );

Systemoutprintln();

}

} catch (SQLException e) {

eprintStackTrace();

} finally {

try {

if (res != null) {

resclose();

res =null;

}

if (sql != null) {

sqlclose();

sql =null;

}

if (con != null) {

conclose();

con =null;

}

} catch (SQLException e) {

eprintStackTrace();

}

}

}

public Connection getConnection() {

try {

ClassforName("commysqljdbcDriver");

// 加载oracleJDBC驱动

Systemoutprintln("数据库驱动加载成功");

} catch (ClassNotFoundException e) {

eprintStackTrace();

}

try {// 通过访问数据库的URL获取数据库连接对象

con = DriverManagergetConnection(

"jdbc:mysql://localhost:3306/mydata", "root", "qwer1234");

//mydata为mysql名字

Systemoutprintln("数据库连接成功");

} catch (SQLException e) {

eprintStackTrace();

}

return con; // 按方法要求返回一个Connection对象

}

}

读取mysql数据库文本字段的值方法如下:

public void read() {

try {

//连接数据库

conn = JdbcUtilsgetConnection();

//查询resume字段,text格式

String sql = "select resume from testclob where id=1";

pt = connprepareStatement(sql);

//执行查询并返回结果

rs = ptexecuteQuery();

if (rsnext()) {

// rsgetCharacterStream读取该字段

Reader reader = rsgetCharacterStream("resume");

//定义字符数组来存放读取值

char buffer[] = new char[1024];

while ((readerread(buffer)) != -1) {

//打印

Systemoutprintln(buffer);

}

readerclose();

}

} catch (Exception e) {

eprintStackTrace();

} finally {

JdbcUtilsrelease(conn, pt, rs);

}

}

读取mysql数据库文本字段的值方法如下:

publicvoidread(){

try{

//连接数据库

conn=JdbcUtils();

//查询resume字段,text格式

Stringsql="selectresumefromtestclobwhereid=1";

pt=conn(sql);

//执行查询并返回结果

rs=pt();

if(rsnext()){

//rs读取该字段

Readerreader=rs("resume");

//定义字符数组来存放读取值

charbuffer[]=newchar[1024];

while((readerread(buffer))!=-1){

//打印

Systemoutprintln(buffer);

}

readerclose();

}

}catch(Exceptione){

e();

}finally{

JdbcUtilsrelease(conn,pt,rs);

}

}

Java可以使用JDBC对数据库进行读写。JDBC访问一般分为如下流程:

1、加载JDBC驱动程序:

在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),

这通过javalangClass类的静态方法forName(String

className)实现。

以上就是关于SqlServer转mysql 字段注释sql脚本全部的内容,包括:SqlServer转mysql 字段注释sql脚本、java中怎么获取mysql数据库的数据、怎样读取mysql数据库文本(text)字段的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9696727.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存