关联两个表的方式包含内连接,外连接(左外连接,右外连接),交叉连接。
创新互联建站专注于吴川企业网站建设,响应式网站开发,商城网站建设。吴川网站建设公司,为吴川等地区提供建站服务。全流程定制网站,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
参考语句:
内连接
select * from student a
inner join stuMarks b
on a.stuid=b.stuid
外连接
select * from student a
inner join stuMarks b
on a.stuid=b.stuid
交叉连接
select * from student a
crossjoin stuMarks b
在我们使用SQL Server数据库的过程中,有时需要将SQL Server数据导出,导入到其他的数据库中,比如导入到Oracle中。
假设要将SQL Server中的Northwind数据库中的Products表导出到Oracle的Scott用户
首先需要有安装SQL Server企业版
1.打开工具:
开始-程序-
导入和SQL Server数据导出数据
2.下一步,选择数据源
[数据源]选择“用于SQL Server的Microsoft OLE DB提供程序”,这应该是缺省值。
[服务器]选择要导出数据的服务器,如果是本机,选择(local)
[数据库]选择要导出的数据所在的库,这里选择Northwind
3.下一步,选择目的
[目的]选择Microsoft ODBC for Oracle
[DSN]选择用户/系统DSN一项,然后在下拉列表框中找一个已经连接到了Scott用户的DSN名称。
如果下拉列表中没有,点下拉列表框右侧的[新建],出现创建新数据源界面。
接下来选择系统数据源,下一步,在驱动程序列表中选择Microsoft ODBC for Oracle
下一步,完成,出现Microsoft ODBC for Oracle安装界面
[数据源名称]随便输入,比如sss
[说明]可以不填
[用户名称]填入要SQL Server数据导出到的Oracle用户名称,这里是scott
[服务器]填入要连接到Oracle服务器所使用的服务名,比方说使用sqlplus scott/tiger@server1可以连接到数据库,那么这里就填入server1。如果本机就是服务器,使用sqlplus scott/tiger即可连接到数据库,这里空着不填即可。
这样就创建好了一个数据源sss,保证下拉列表框中选择了sss一项。
[用户名]填入SQL Server数据导出到的Oracle用户名称,这里是scott
[密码]填入SQL Server数据导出到的Oracle用户使用的密码,这里是tiger
4.下一步,指定表复制或查询
如果要导出的内容是整个表,选择[从源数据库复制表和视图]
如果要导出的内容是表的一部分列,行,可以选择[用一条查询指定要传输的数据],这时需要写出一个查询语句
这里选择第一项[从源数据库复制表和视图]
5.下一步,选择源表和视图
点中要导出的表Products一行的复选框,目的、转换两栏就会出现内容。
目的可以用来选择表名。转换可以用来修改列的数据类型或是整个建表的SQL语句
6.下一步,保存、调度和复制包
选中立即运行
7.下一步,正在完成DTS导入/导出向导
8.完成
提示“成功地将n个表从Microsoft SQLServer复制到了Oracle”
9.完成,关闭导入导出程序
注意:因为oracle的表名都是大写的,而SQL的表可能是大小混写的,所以导入后在oracle里查不到该表,比如这个Products表在oracle里查询就应该写成select * from scott."Products";为了方便查询可以通过批量修改表名为大写以便后面导数据的工作。
---导完数据后执行下面语句,生成把表名修改成大写的操作
select 'ALTER TABLE '||'"'||table_name||'"'||' RENAME TO '|| upper(table_name)||';' from user_tab_comments;
把生成的文件执行即可把此用户下的所有表名修改成大写。
首先你这种连接方式要导入一个jar包,里面是写好数据库连接配置的
然后代码改成这样
class.forname("com.microsoft.sqlserver.jdbc.sqlserverdriver");
("jdbc:sqlserver://localhost:1433;databasename=sutinfo","sa","200100421");
作用是相同的,唯一的区别就是左右嘛
左联接的话左表为主表,查询出主表全部数据以及从表(右表)的关联部分数据,
未关联处以null补全
右联接的话与其相反