从XML文件中获取部分连接字符串(Taking part of connection string from XML file)
我试图根据包含服务器IP地址的XML文件构建一个连接到firebird数据库的连接字符串。
public class globals { static string _serv; public static string serv { get { return _serv; } set { _serv=value; } } public static XmlDocument xmld = new XmlDocument(); public static void serv_check() { xmld.Load("ustawienia.xml"); globals._serv = xmld.GetElementsByTagName("ip").Item(0).InnerText; if (globals._serv.Length<=0) { MessageBox.Show("Nie zdefiniowano servera"); Server_Deff sdf = new Server_Deff(); sdf.ShowDialog(); } } static string db_user = "SYSDBA"; static string db_pass = "masterkey"; public static string cstr= "User=" + globals.db_user + ";" + "Password=" + globals.db_pass + ";" + "Database=db_kanc;" + "DataSource=" + globals.serv + "Port=3050;" + "Dialect=3;" + "Charset=NONE;" + "Role=appka;" + "Connection lifetime=15;" + "Pooling=true;" + "MinPoolSize=0;" + "MaxPoolSize=50;" + "Packet Size=8192;" + "ServerType=0"; public static FbConnection conn = new FbConnection(globals.cstr); public static FbTransaction transaction; public static void openConnection() // Open database Connection { conn.Open(); transaction = conn.BeginTransaction(); }
由于某些原因,既没有在XML文件中定义IP地址也没有在它不是变量serv时,似乎是null。 我可以通过消息框获取值,但不能在连接字符串中获取正确的数据源。
在尝试连接到db时,我收到如下错误:
FirebirdSql.Data.FirebirdClient.FbException: Unable to complete network request to host "Port=3050". ---> FirebirdSql.Data.Common.IscException: Unable to complete network request to host "Port=3050". w FirebirdSql.Data.Client.Managed.Version10.GdsConnection.Connect() w FirebirdSql.Data.FirebirdClient.ClientFactory.CreateManagedDatabase(FbConnectionString options) w FirebirdSql.Data.FirebirdClient.ClientFactory.CreateDatabase(FbConnectionString options) w FirebirdSql.Data.FirebirdClient.FbConnectionInternal.Connect()
有任何想法吗?
I've tried to build a connection string to a firebird db based on some XML file containing server IP address.
public class globals { static string _serv; public static string serv { get { return _serv; } set { _serv=value; } } public static XmlDocument xmld = new XmlDocument(); public static void serv_check() { xmld.Load("ustawienia.xml"); globals._serv = xmld.GetElementsByTagName("ip").Item(0).InnerText; if (globals._serv.Length<=0) { MessageBox.Show("Nie zdefiniowano servera"); Server_Deff sdf = new Server_Deff(); sdf.ShowDialog(); } } static string db_user = "SYSDBA"; static string db_pass = "masterkey"; public static string cstr= "User=" + globals.db_user + ";" + "Password=" + globals.db_pass + ";" + "Database=db_kanc;" + "DataSource=" + globals.serv + "Port=3050;" + "Dialect=3;" + "Charset=NONE;" + "Role=appka;" + "Connection lifetime=15;" + "Pooling=true;" + "MinPoolSize=0;" + "MaxPoolSize=50;" + "Packet Size=8192;" + "ServerType=0"; public static FbConnection conn = new FbConnection(globals.cstr); public static FbTransaction transaction; public static void openConnection() // Open database Connection { conn.Open(); transaction = conn.BeginTransaction(); }
For some reasons neither when the IP address is defined in XML file nor when it's not variable serv seems to be null. I can get the value through message box but not as a proper Datasource in connection string.
While trying to connect to db I'm getting error like this:
FirebirdSql.Data.FirebirdClient.FbException: Unable to complete network request to host "Port=3050". ---> FirebirdSql.Data.Common.IscException: Unable to complete network request to host "Port=3050". w FirebirdSql.Data.Client.Managed.Version10.GdsConnection.Connect() w FirebirdSql.Data.FirebirdClient.ClientFactory.CreateManagedDatabase(FbConnectionString options) w FirebirdSql.Data.FirebirdClient.ClientFactory.CreateDatabase(FbConnectionString options) w FirebirdSql.Data.FirebirdClient.FbConnectionInternal.Connect()
Any ideas?
原文:https://stackoverflow.com/questions/27893109
最满意答案
根据SQLite语法规范,
nextfield TEXT
应与其他列定义放在一起。FOREIGN KEY
与table-constraint
部分有关,应在列定义之后定义:$statement = $db->query("CREATE TABLE IF NOT EXISTS appointment ( id TEXT PRIMARY KEY NOT NULL , customer TEXT , nextfield TEXT, FOREIGN KEY (customer) REFERENCES customers(id) )");
According to the SQLite grammar specification,
nextfield TEXT
should be placed together with the other column definitions.FOREIGN KEY
relates to thetable-constraint
section and should be defined after column definitions:$statement = $db->query("CREATE TABLE IF NOT EXISTS appointment ( id TEXT PRIMARY KEY NOT NULL , customer TEXT , nextfield TEXT, FOREIGN KEY (customer) REFERENCES customers(id) )");
相关问答
更多-
我想我可以回答我自己的问题:文档说:默认情况下禁用外键约束(为了向后兼容),所以必须单独为每个数据库连接启用。 讨厌,但它现在终于工作了。 I think I can answer my own question: The documentation says: Foreign key constraints are disabled by default (for backwards compatibility), so must be enabled for each database connecti ...
-
ID列被命名为pid ,而不是id 。 父键列必须具有UNIQUE或PRIMARY KEY约束。 The ID column is named pid, not id. The parent key column must have a UNIQUE or PRIMARY KEY constraint.
-
根据SQLite语法规范, nextfield TEXT应与其他列定义放在一起。 FOREIGN KEY与table-constraint部分有关,应在列定义之后定义: $statement = $db->query("CREATE TABLE IF NOT EXISTS appointment ( id TEXT PRIMARY KEY NOT NULL , customer TEXT , nextfield TEXT, FOREIGN KEY (customer) REFER ...
-
C#Sqlite外键(C# Sqlite Foreign Keys)[2023-08-15]
near "PRAGMA foreign_keys": syntax error 在“附近”之后引用的东西应该是一个单词。 所以在这种情况下,空格字符实际上不是正常的空格字符,而是其他东西,例如不间断的空格。 near "PRAGMA foreign_keys": syntax error The thing quoted after "near" should be a single word. So in this case, the space character is not actually ... -
也许我不明白这个问题,但如果这是你想要的约束,那就这样做: ALTER TABLE Job ADD FOREIGN KEY (employer_id) REFERENCES Employer(_id) ON DELETE NO ACTION ON UPDATE NO ACTION; Maybe I don't understand the question, but if it's the constraint you want, just do this: ALTER TAB ...
-
似乎每个表的FKTables属性未在文件“SQLite.ttinclude”中分配。 所以我添加了一些代码行并设法生成外键代码: 在第16行(var schema = conn.GetSchema(“COLUMNS”);)之后,插入: var schemaForeignKeys = conn.GetSchema("FOREIGNKEYS"); 在第29行(tbl.Name = row [“TABLE_NAME”]。ToString();)之后,插入: tbl.FKTables = new List您没有在createOrderTable查询中创建列userId和productId,但尝试创建外键引用。 首先创建一个列,然后引用它。 例如: String createOrderTable = "create table " + ORDER_TABLE + "(orderID INTEGER PRIMARY KEY AUTOINCREMENT," + "userID INTEGER,"+ "productID INTEGER,"+ "FOR ...检查列顺序! INSERT INTO alias_source_relations VALUES('Allen1980', 1, 1); Check column order! INSERT INTO alias_source_relations VALUES('Allen1980', 1, 1);我不知道你的意思是“正确”,所以我将告诉你我将如何做到: CREATE TABLE users ( id INT NOT NULL PRIMARY_KEY AUTO_INCREMENT, name TEXT NOT NULL, address TEXT NOT NULL, role TEXT NOT NULL, /* employer, applicant etc. */ ) ...您需要显式将NULL传递给插入。 You need to explicitly pass NULL to the insert.
相关文章
更多- 移动MM failed to find resource file{mmiap.xml}
- MyBatis XML 配置详解
- 无法启动Hbase hbase-default.xml file seems to be for and old version of HBase
- Hadoop HDFS Wrong FS: hdfs:/ expected file:///
- 怎么得到String数组?
- Java 流(Stream)、文件(File)和IO
- There is already an open DataReader associated with this Connection which must be closed first
- MyBatis XML 映射文件详解
- ResultSet转换成XML
- Heritrix源码分析(二) 配置文件order.xml介绍
最新问答
更多- 获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
- 如何通过引用返回对象?(How is returning an object by reference possible?)
- 矩阵如何存储在内存中?(How are matrices stored in memory?)
- 每个请求的Java新会话?(Java New Session For Each Request?)
- css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
- 无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
- xcode语法颜色编码解释?(xcode syntax color coding explained?)
- 在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
- 从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
- 从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
- 西安哪有PLC可控制编程的培训
- 在Entity Framework中选择基类(Select base class in Entity Framework)
- 在Android中出现错误“数据集和渲染器应该不为null,并且应该具有相同数量的系列”(Error “Dataset and renderer should be not null and should have the same number of series” in Android)
- 电脑二级VF有什么用
- Datamapper Ruby如何添加Hook方法(Datamapper Ruby How to add Hook Method)
- 金华英语角.
- 手机软件如何制作
- 用于Android webview中图像保存的上下文菜单(Context Menu for Image Saving in an Android webview)
- 注意:未定义的偏移量:PHP(Notice: Undefined offset: PHP)
- 如何读R中的大数据集[复制](How to read large dataset in R [duplicate])
- Unity 5 Heighmap与地形宽度/地形长度的分辨率关系?(Unity 5 Heighmap Resolution relationship to terrain width / terrain length?)
- 如何通知PipedOutputStream线程写入最后一个字节的PipedInputStream线程?(How to notify PipedInputStream thread that PipedOutputStream thread has written last byte?)
- python的访问器方法有哪些
- DeviceNetworkInformation:哪个是哪个?(DeviceNetworkInformation: Which is which?)
- 在Ruby中对组合进行排序(Sorting a combination in Ruby)
- 网站开发的流程?
- 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
- 条带格式类型格式模式编号无法正常工作(Stripes format type format pattern number not working properly)
- 透明度错误IE11(Transparency bug IE11)
- linux的基本操作命令。。。