怎样在Oracle中拼接字符串
1、创建新的测试数据表,或者可以选择要测试的现有表数据。这只是测试字符串连接,不会影响数据内容。从T_BASE_PROVINCE t中选择*,其中t.id = 1。
月湖网站建设公司创新互联建站,月湖网站设计制作,有大型网站制作公司丰富经验。已为月湖上千余家提供企业网站建设服务。企业网站搭建\成都外贸网站制作要多少钱,请找那个售后服务好的月湖做网站的公司定做!
2、首先介绍下一个||满足连接,||可以一次连接多个字符串,选择t.PROVINCEID ||来自T_BASE_PROVINCE的t.PROVINCE t其中t.id = 1。
3、由||连接除了字段和字段之间的字符串连接之外,还可以将方法连接到常量字符串选择'省:'||来自T_BASE_PROVINCE的t.PROVINCE t其中t.id = 1。
4、您还可以使用CONCAT函数连接到字符串,传入函数字符串1和字符串2,两个参数。参数的方式也支持常量字符串从T_BASE_PROVINCE t中选择CONCAT(t.PROVINCEID,t.PROVINCE),其中t.id = 1。
5、如果要连接的字符串有两个以上的参数,如下例所示,则有4个字符串连接。运行后,测试发现异常,参数无效。从T_BASE_PROVINCE t中选择CONCAT('省ID:',t.PROVINCEID,'省:',t.PROVINCE),其中t.id = 1; - ERROR ORA-00909:参数数量无效。
6、对于上述问题,如果连接参数大于2,则可以选择CONCAT嵌套方法。从T_BASE_PROVINCE t中选择CONCAT(CONCAT('省ID:',t.PROVINCEID),'省:'),t.PROVINCE),其中t.id = 1。
图片如何存放在oracle数据库
1、使用blob将图片保存为二进制格式,(可以用浏览器来转换)随后用base64编码来保存图片,再将base64编码保存进数据库的clob类型字段上。
2、然后要用一个数据名称System.Data.OracleClient。
3、创建一个储存文件,然后把相关代码写入比如string execSql="insert into clob_table(clob_id,) values(1,:clob_pic);"编写代码的时候注意,后缀的符号(;")也要写入,不然无法进行下一步指令。
4、之前上面用的是base64编码,当显示图片的时候要将图片输出到浏览器流中,不然在base64里面是看不到图片。
5、在输出的时候要把图片转换成二进制(buffur即二进制编码)。
6、随后上传即可,然二进制流也可以存成文件(File)存到FTP服务器,当需要的时候可以根据路径进行下载的。
如何在本地建立oracle数据库
前提:安装好oracle数据库客户端; PL/SQL DEVELOPER
1.打开DatabaseConfiguration Assistant,如图:
选择创建数据库-next-选择一般用途-填写自己的数据库名-next--填写口令,选择同一口令吧,当然也可以为每个用户填写不同的口令,以后基本上默认安装。安装完成后退出即可。
2.接下来配置服务监听。同理点击开始-程序-Oracle- OraDb10g_home1-配置和移植工具-NetManager后如下:
点击本地-服务命名。然后点击“+”号按钮。弹出添加服务命名的窗口。填写相应的选项。
第一步 填写网络服务名填一个对自己能够起到标示的就可以,换言之随便起吧,只要自己记得住就可以。
第二步 选择TCP/IP协议然后next
第三步 填写主机名,这个主机名就填写自己本地电脑的主机名也就是你自己电脑的计算机名称。端口就选择默认的1521。
第四步 填写服务名,这个填写自己刚建立的数据库的名称。
第五步 测试,点击测试,弹出测试窗口。在测试窗口,点击更改登录,用户名填写system口令就是你在建立数据库的时候填写的那个口令。然后确定在测试,填写正确的话,就会看到测试成功的消息。
第六步 点击完成。
3.通过plsql连接oracle数据库
如下:
选择:Net Configuration Assistant
启动-监听程序配置-添加-输入程序监听名(可随意)-选定TCP协议-使用标准端口号1521-否-选择要启动的监听程序,即之前输入的程序监听名-配置完成-本地net服务名配置-添加-服务名,即数据库名-TCP-主机名-是,进行测试-测试成功-输入服务名-否-配置完毕-本地net服务名配置
这个时候启动plsql,就可以选择本地的数据库登录啦!!!
接下来给数据库创建表空间和用户
表空间:tablespace为表空间名;datafile为存放.dbf文件的路径,要提前设置好
create tablespace struts2 datafile 'E:\oracle\dmp\struts2.dbf' size 500m
用户:用户名struts2 密码 1 默认表空间名struts2
create user struts2 identified by 1 default tablespace struts2 quota unlimited on struts2;
给用户分配权限
grant dba to struts2;
分配系统权限
grant unlimited tablespace to struts2;
grant create session to struts2;
OK,现在可以用你自己设置的用户名/密码登陆了
如何在oracle上装linux
方法/步骤
检查硬件是否满足要求
1)确保系统有足够的 RAM 和交换空间大小,运行以下命令:
#grep MemTotal /proc/meminfo
#grepSwapTotal /proc/meminfo
注:所需最小 RAM 为 512MB,而所需最小交换空间为 1GB。对于 RAM 小于或等于 2GB 的系统,交换空间应为 RAM 数量的两倍;对于 RAM 大于 2GB 的系统,交换空间应为 RAM 数量的一到两倍。
2)确保有足够的磁盘空间。Oracle 10g软件大约需要 2.5GB 的可用磁盘空间,数据库则另需至少1.2G的磁盘空间
3)/tmp 目录至少需要 400MB 的可用空间。
要检查系统上的可用磁盘空间,运行以下命令:
#df-h
检查系统是否已安装所需的开发包
使用rpm -qa命令,确保以下包已成功安装。对于包的版本,只有版本高于下面的都可以,如果低于此版本,则要升级处理,如下:
binutils-2.15.92.0.2-13.EL4
compat-db-4.1.25-9
compat-libstdc++-296-2.96-132.7.2
control-center-2.8.0-12
gcc-3.4.3-22.1.EL4
gcc-c++-3.4.3-22.1.EL44
glibc-2.3.4-2.9
glibc-common-2.3.4-2.9
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-22.1
libstdc++-devel-3.4.3-22.1
make-3.80-5
pdksh-5.2.14-30
sysstat-5.0.5-1
xscreensaver-4.18-5.rhel4.2
setarch-1.6-1
libaio-0.3.103-3
创建oracle组和oracle用户
创建用于安装和维护 Oracle 10g软件的 Linux 组和用户帐户。用户帐户将称为 oracle,而组将称为 oinstall(用于软件安装) 和 dba(用于数据库管理)。
#groupadd oinstall
#groupadd dba
#useradd -m -g oinstall -G dba oracle –poracle (p表示添加帐号密码)
创建oracle目录并改变目录权限
现在,创建存储 Oracle 10g 软件和数据库文件的目录。本指南在创建目录结构时所用的命名惯例符合最佳灵活结构 (OFA) 规范。
以 root 用户身份执行以下命令:
#mkdir -p /u01/app/oracle # oracle根目录,-p 表示递归建立目录
#mkdir -p /u02/oradata # oracle数据文件存放目录
#chown -R oracle:oinstall /u01
#chown -R oracle:oinstall /u02
#chmod -R 775 /u01
#chmod -R 775 /u02
配置linux内核参数
#vi/etc/sysctl.conf,添加如下内容:
kernel.shmall = 2097152
kernel.shmmax = 2147483648 #此处默认设置为2G,数值一般设为物理内存的40~50%
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
完成后,运行以下命令激活更改:
#sysctl–p
注:Linux 内核非常出色。与大多数其他 *NIX 系统不同,Linux 允许在系统启动和运行时修改大多数内核参数。完成内核参数更改后不必重新启动系统。Oracle 数据库 10g 需要以下所示的内核参数设置。其中给出的是最小值,因此如果您的系统使用的值较大,则不要更改它。
配置oracle用户的shell限制
#vi /etc/security/limits.conf 添加如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
#vi /etc/pam.d/login 添加如下内容:
session required pam_limits.so
导出x图形界面给oracle用户
由于安装时采用的是oracle的OUI图形化界面,需要X支持,而默认oracle用户是不支持图形化操作的,必须以root的身份导出X给oracle用户使用。运行如下命令:
#xhost +
access control disabled,clients can connect from any host
出现以上文字表示导出成功。
oracle用户下执行
1.2.1设置环境变量
#su –oracle
$vi .bash_profile
加入以下内容:
TMP=/tmp
TMPDIR=$TMP
ORACLE_BASE=/u01/app/oracle #oracle 根目录
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1 #oracle 家目录
ORACLE_SID=orcl #根据实际需要命名
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
PATH=$ORACLE_HOME/bin:$PATH
exportTMP TMPDIR ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH
$source .bash_profile #使环境变量生效
2、安装 Oracle
2.1、下载并解压oracle软件
从Oracle网站下载10201_database_linux_x86_32.cpio.gz到oracle用户家目录下/home/oracle/(也可为其他目录),使用oracle用户登录后,解压此文件:
$startx
$cd /home/oracle
$gunzip 10201_database_linux_x86_64.cpio.gz
$cpio -idmv 10201_database_linux_x86_64.cpio
以上操作将Oracle安装文件解压到database/目录。
(根据下载的包的格式不同,解压出来后的目录格式可能不同。)
2.2、Oracle OUI进行图形化安装(推荐使用高级安装方式)
切换到database/目录下,运行以下命令:
$cd database
$./runInstaller
检验是否安装成功
数据库正常安装结束后,默认是启动的。以oracle用户身份运行以下命令测试:
$sqlplus/ as sysdba
SQLselectopen_mode from v$database;
OPEN_MODE
------------------
READ WRITE
若出现以上文字说明数据库正在正常运行。自此,数据库安装成功。
如何在oracle中导入dmp数据库文件
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命
令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。
执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,
DOS中可以执行时由于 在oracle 8i 中 安装目录\ora81\BIN被设置为全局路径,
该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。
oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。
SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。
下面介绍的是导入导出的实例。
数据导出:
1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
exp system/manager@TEST file=d:\daochu.dmp full=y
2 将数据库中system用户与sys用户的表导出
exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
3 将数据库中的表inner_notify、notify_staff_relat导出
exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=(inner_notify,notify_staff_relat)
4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"
上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
也可以在上面命令后面 加上 compress=y 来实现。
数据的导入
1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
imp system/manager@TEST file=d:\daochu.dmp
imp aichannel/aichannel@HUST full=y file=file= d:\data\newsmgnt.dmp ignore=y
上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
在后面加上 ignore=y 就可以了。
2 将d:\daochu.dmp中的表table1 导入
imp system/manager@TEST file=d:\daochu.dmp tables=(table1)
基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。
注意:
操作者要有足够的权限,权限不够它会提示。
数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。
附录一:
给用户增加导入数据权限的操作
第一,启动sql*puls
第二,以system/manager登陆
第三,create user 用户名 IDENTIFIED BY 密码 (如果已经创建过用户,这步可以省略)
第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,
DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字
第五, 运行-cmd-进入dmp文件所在的目录,
imp userid=system/manager full=y file=*.dmp
或者 imp userid=system/manager full=y file=filename.dmp
执行示例:
F:\Work\Oracle_Data\backupimp userid=test/test full=y file=inner_notify.dmp
屏幕显示
Import: Release 8.1.7.0.0 - Production on 星期四 2月 16 16:50:05 2006
(c) Copyright 2000 Oracle Corporation. All rights reserved.
连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
With the Partitioning option
JServer Release 8.1.7.0.0 - Production
经由常规路径导出由EXPORT:V08.01.07创建的文件
已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入
导出服务器使用UTF8 NCHAR 字符集 (可能的ncharset转换)
. 正在将AICHANNEL的对象导入到 AICHANNEL
. . 正在导入表 "INNER_NOTIFY" 4行被导入
准备启用约束条件...
成功终止导入,但出现警告。
附录二:
Oracle 不允许直接改变表的拥有者, 利用Export/Import可以达到这一目的.
先建立import9.par,
然后,使用时命令如下:imp parfile=/filepath/import9.par
例 import9.par 内容如下:
FROMUSER=TGPMS
TOUSER=TGPMS2 (注:把表的拥有者由FROMUSER改为TOUSER,FROMUSER和TOUSER的用户可以不同)
ROWS=Y
INDEXES=Y
GRANTS=Y
CONSTRAINTS=Y
BUFFER=409600
file==/backup/ctgpc_20030623.dmp
log==/backup/import_20030623.log
当前标题:如何在oracle,如何在oracle数据库中修改表的数据
文章网址:http://scyingshan.cn/article/hdheej.html