| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 950 人关注过本帖
标题:请教关于数据库的问题
只看楼主 加入收藏
风子
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2004-12-28
收藏
 问题点数:0 回复次数:4 
请教关于数据库的问题
1、能否用c#代码建立一个Access文件,并动态地添加表?

2、在DataSet 的两个表中建立关系时,要求父表中的一列和子表中的两列建立一个关系,请问如何处理?

这两个问题我以前也发过帖,不知是因为大家认为这不是问题,不需要回答。还是大家没有看到,请高手指点。
搜索更多相关主题的帖子: 数据库 
2005-02-25 12:54
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
收藏
得分:0 
不知道你是不是要数据库访问的代码: 1:using指令: using System.Data.SqlClient; 这是访问SQL Server数据库 的类; 2:组织一下C#代码 3:静态的SQL连接 public static SqlConnection cnn; public const string ConnectionString = @"data source=localhost; initial catalog=......; integrated security=SSPI; persist security info=False;packet size=4096" public const string ConnectionString2 = @"data source =localhost; initial catalog=......;persist security info=False;user id=sa;packet size=4096"; 4,定义DataAdapter, parameter,DataSet和Dataview public static SqlDataAdapter da; public static SqlParameter param; public static DataSet da =new DataSet(); public static DataVIew dv=new DataView(); 5,排序字符串 public static string Sort; 6,Option表 public static string PrintPicture; 7,构造函数 8,SQL连接 cnn=new SqlConnection(); 添加在initializeComponent方法调用的后面; 9,设置DataView属性 dv. AlllowNew=true; dv.AllowEdit=true; dv.AllowDelete=true; 10,Clobal_Load方法 private void Global_Load(object sender,System.EventArgs e) { } 11,定义循环变量 int i; 12,打开数据库连接 try { cnn.ConnectionString =ConnectionString; cnn.Open(); } catch { try { cnn.ConnectionString=Connnection2; cnn.Open(); } catch(Exception ex) { MessageBox.Show(ex.Message); } } 13,创建SQL命令对象 SqlCommand cmd =cnn.CreateCommand(); 14,查询MSDE数据库的数据 cmd.CommandText="SELECT * FROM tbl"; da=new SqlDataAdapter(cmd); da.FillSchema(ds,SchemaType.Source); da.AcceptChangesDuringFill=true; da.Fill(ds,"tbl"); dv.Table=ds.Tables["tbl"]; 15,读取排序次序 string[] sortValue=new String[2]; string[] sortOrder=new String[2]; cmd.CommandText="SELECT * FROM tbl"; SqlDataReader drSort=cmd.ExecuteReader(); i=0; while(drSort.Reader()) { sortValue[i] =drSort.GetString(2); sortOrder[i]=drSort.GetString(2); ++i; } drSort.Close(); Array.Sort(sortOrder,sortValue); Sort=""; for(i=0;i<2;i++) { case "0": break; default: Sort+=sortValue[i]; Sort+=","; break; } } Sort+="Key"; dv.Sort=Sort; 16读取选项文件 cmd.CommandText="SELECT * FROM tbl"; SqlDataReader drOption=smd.ExcuteReader(); while(drOprion.Read()) { switch(drOption.Gerstring()) { case "PrintPicture": PrintPicture=drOprion.Gerstring(2); switch(PrintPictures) { case"Yes": mnuPrintWithPicture.Checked=true; break; case "No": mnuPrintWithoue\tPicture.Checked=true; } break; } } 17,为Sort和Option表添加默认数据 INSERT INTO TBLSort(......) VALUES(.......) 18备份项目 19验证可以查看数据

大家都是朋友,有空就来坐坐!
2005-02-25 13:39
volte
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:69
帖 子:1167
专家分:1316
注 册:2004-12-19
收藏
得分:0 
第二个问题我没听懂你的意思?
你最好成绩说详细一点。
还有问问题时候,你最好问某个小点。
这样问,太笼统了。

大家都是朋友,有空就来坐坐!
2005-02-25 13:45
风子
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2004-12-28
收藏
得分:0 
谢谢版主!
第一个问题是要创建一个Access文件。

第二个问题其实就是父表中的一个字段对应子表中的两个字段,这种情况下能不能建立一个一对二的DataRelation。

学习、学习、还要再学习!提高、提高、一定能提高!
2005-02-26 14:54
风子
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2004-12-28
收藏
得分:0 
第一个问题的解答:

using System;
using ADOX;

namespace ConsoleApplication1
{
    class Class1
    {
        [STAThread]
        static void Main(string[] args)
        {
            ADOX.CatalogClass cat = new ADOX.CatalogClass();

            cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;" +
                   "Data Source=D:\\AccessDB\\NewMDB.mdb;" +
                   "Jet OLEDB:Engine Type=5");

            Console.WriteLine("Database Created Successfully");

            cat = null;

        }
    }
}

学习、学习、还要再学习!提高、提高、一定能提高!
2005-03-20 19:29
快速回复:请教关于数据库的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016520 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved