以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  求助数据库问题  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=4999)

--  作者:明心
--  发布时间:2011/1/26 11:17:27
--  求助数据库问题

问题1、如果判断数据库中表是否存在

问题2、新建表的名称为什么不能动态的呢

mxstr = reportData.Label
CREATETABLE = "CREATE TABLE"&mxstr&"(Id_P int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255))"
adoConn.Execute(CREATETABLE)

 

红色的位置为什么不能动态的呢。请高手指教。


--  作者:明心
--  发布时间:2011/1/26 11:19:59
--  
能给个动态创建数据表的例子吗
--  作者:admin
--  发布时间:2011/1/26 11:22:36
--  

返回了什么错误?


--  作者:明心
--  发布时间:2011/1/26 11:26:31
--  

CREATE TABLE 语句中语法错误。

 

如果把CREATETABLE = "CREATE TABLE"&mxstr&"(Id_P int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255))"
改成CREATETABLE = "CREATE TABLE mxstr  (Id_P int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255))"

就不提示语法错误了

但是建立的是名为“mxstr ”的表,循环到下一个时,提示表已经存在。


--  作者:admin
--  发布时间:2011/1/26 11:27:20
--  
是啊,你肯定是重复建表了
--  作者:明心
--  发布时间:2011/1/26 11:31:26
--  

我是想把期货四个市场的合约数据都出入到数据库中,不循环怎么处理呢。关键是不知道如何写动态建立数据表的语句。(在循环中,建立的数据表的名字随合约的代码变化)

这个怎么处理呢


--  作者:王锋
--  发布时间:2011/1/26 13:56:30
--  
"&mxstr&"( 这个变量要每次循环时都要有变化的,这个你不会是不知道把?
--  作者:明心
--  发布时间:2011/1/26 15:35:41
--  
以下是引用王锋在2011-1-26 13:56:30的发言:
"&mxstr&"( 这个变量要每次循环时都要有变化的,这个你不会是不知道把?

当然是变化的,但是根本就不能这样写。

只能这样写

CREATETABLE = "CREATE TABLE mxstr  (Id_P int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255))"

但这样写的话,数据库名就固定一个了

但下面这样写

CREATETABLE = "CREATE TABLE"&mxstr&"(Id_P int,LastName varchar(255),FirstName varchar(255),Address varchar(255),City varchar(255))"

我单独输出mxstr这个是变化的

但是这样写测试通过不了,提示CREATE TABLE 语句中语法错误。

 

也就是说只能连续写在引号呢,不能拆分中间家变量。


--  作者:王锋
--  发布时间:2011/1/26 15:39:39
--  

TABLE"&mxstr&"(Id_P int

你字符串中间连个空格都不加,哪个系统能认?

[此贴子已经被作者于2011-1-26 15:39:46编辑过]

--  作者:明心
--  发布时间:2011/1/26 15:47:24
--  

好像是哦。呵呵。谢谢了

唉。没有注意到。嘿嘿