问题描述 为了在oracle中新增表,在PDM中建表,使用其生成的sql语句,但是建表不能成功,提示 ORA-00906: 缺失左括号 原因是多了clustered 关键字 情景重现 1. 新建一个pdm文件 2. 建表后预览sql 是有clustered 这个关键字的 3. 建表时报错 问题解决 调查发现数据库的问题,右键数据库属性 查看DBMS 发现是 SQL SERVER ! 解决办法就是切换DBMS: 点击确定 再次查看sql语句,一切正常.问题最终解决.…
今天在Mac机器上使用了Flex Builder编辑了一个源代码文件,保存后使用vim命令去打开时发现系统自动在每一行的结尾添加了^M符号,其实^M在Linux/Unix中是非常常见的,也就是我们在Win中见过的/r回车符号.由于编辑软件的编码问题,某些IDE的编辑器在编辑完文件之后会自动加上这个^M符号.看起来对我们的源代码没有任何影响,其实并不然,当我们把源代码文件Check In到svn之类的版本控制软件之后,由于之前版本的文件并不存在这个符号,所以开发成员在使用diff工具来查看改动的内…
l在 SQL 语句中使用IF-THEN-ELSE 逻辑 l l使用两种方法: •CASE 表达式:SQL99的语法,类似Basic,比较繁琐 •DECODE 函数:Oracle自己的语法,类似Java,比较简介 SQL> select ename,job, sal, case job when 'PRESIDENT' then 1.1*sal when 'MANAGER' then 1.2*sal when 'CLERK' then 1.3*sal else 1.4*sal end 涨后薪水 f…
Oracle数据库中,在SQL语句中连接字符串的方法是哪个?(选择1项) A.cat B.concat C.join D.+ 解答:B…
[转自] http://blog.csdn.net/t0nsha/article/details/7828538 Oracle sql语句中不支持boolean类型(decode&case) 版本信息: SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterpri…
Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数: select trunc(1.23856789,2) from dual round(m,n) 可以四舍五入 trunc(m,n) 直接丢弃,不四舍五入…
-- 创建一个用户并分配表空间和分配权限 -- 以sysdba登录 oracle@sha-col-oracle-2:~> sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on Mon Mar 7 18:48:59 2016 Copyright (c) 1982, 2014, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Ed…
在SAE上部署网站时需要上传本地的数据库结构,我也导出了本地数据库为sql文件,但是上传到SAE上时遇到了如下错误: MySQL 返回: #1044 - Access denied for user 'koky1lxj33_pma'@'10.67.15.%' to database 'photography'  原因在于sql脚本中包含了创建数据库的语句,但是我们并未有建库权限,只要删掉 CREATE DATABASE 的句子就可以了,不要忘了将 Use ’xxxx‘ 中的xxxx改为SAE上相…
个人对于选择存储引擎,建表,建索引,sql优化的一些总结,给读者提供一些参考意见 推荐访问我的个人网站,排版更好看: https://chenmingyu.top/mysql-optimize/ 存储引擎 mysql中查看支持的引擎的sql: show engines; 日常工作中使用较多的存储引擎对比:InnoDB,MyISAM InnoDB MyISAM 存储限制 64T 256T 支持事务 yes no 支持索引 yes yes 支持全文索引 no yes 支持数据缓存 yes no 支持…
在诊断 sql的性能问题时,我们有时候须要获取其绑定变量的实际值,然后将此实际值带入到sql语句其中,用原来的sql构成select语句(带where条件),实际的运行一下,看一下选择性怎样. 本文就是说获取其绑定变量值的方法.本文的编写得到枯荣长老的帮助,在此表示感谢. 本文适用于与oracle 10G或者更高版本号的db. alter session set nls_date_format = 'yyyy-mm-dd,hh24:mi:ss'; set linesize 400 col sql…
直入主题: 我们做一个操作,将员工SCOTT的部门去掉,再次通过内连接查看数据,看看会产生什么现象? 使用内连接,查询数据 问题:找不到SCOTT员工了,只有13条数据,这显然不合理:这就是内连接的缺点 -- 内连接:只显示匹配的数据-- 外连接:显示匹配的数据,还显示(部分或者全部)不匹配的数据,那就是显示(全部)的数据 (1)左外连接:left join 特点:左表全部显示,包括不匹配的数据,右表进行匹配显示 (2)右外连接:right join 右表全部显示,包括不匹配的数据,左表进行匹配…
本文章目的:力求清晰明了讲解SQL语句的内连接的各种应用,没有深奥的理解! 前奏:这篇文章和下篇文章会将内连接和外连接讲解清楚SQL语句的多表查询常用的有以下几种:两表联合查询(1)内连接(2)外连接(分左外连接.右外连接)(3)全外连接(4)自连接三表查询(1)三表查询本片讲解两表联合查询的内连接:第一步:准备表,员工表emp,部门表dept关联关系:员工表的“deptno”字段关联部门表的“deptno” 建表语句如下: create table DEPT ( DEPTNO ) not nu…
在Oracle中调用Java程序,注意:java方法必须是static类型的,如果想在JAVA中使用system.out/err输出log. 需要在oracle 中执行"call dbms_java.set_output(5000);".一.helloWord1 编写JAVA程序,也是在SQL/PLUS中写,并执行. create or replace and compile Javasource named hello as public     class   Hello    {…
‘&’符号在SQL中有特殊含义,所以在SQL中想要写入&,需要特殊处理. 如下SQL语句就不能正确运行: SQL> select 'a&b' from dual; 处理方法: 用Oracle的字符串处理函数chr处理.chr(38)表示 &符号 如:select chr(38) from dual; 结果:& SQL> select 'a'||chr(38)||'b' from dual; 结果:a&b 其他不能处理的特殊符合,也用类似的方式处理…
SQL 2008清空日志的SQL语句如下: USE[master] GO ALTER DATABASE 要清理的数据库名称 SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE 要清理的数据库名称 SET RECOVERY SIMPLE --简单模式 GO USE 要清理的数据库名称 GO , TRUNCATEONLY) --设置压缩后的日志大小为2M,可以自行指定 GO USE[master] GO ALTER DATABASE 要清理的数据库名…
oracle添加表注释和表字段注释 创建Oracle数据库表时候加上注释 CREATE TABLE t1(id  varchar2(32) primary key,name VARCHAR2(8) NOT NULL,age number,) 添加表注释:COMMENT ON table t1 IS '个人信息'; 添加字段注释:comment on column t1.id  is 'id';comment on column t1.nameis '姓名';comment on column t…
DROP TABLE IF EXISTS `".$db_prefix."adminlog`;CREATE TABLE `".$db_prefix."adminlog` ( `adminlogid` int(11) NOT NULL auto_increment, `action` varchar(50) NOT NULL default '', `script` varchar(255) NOT NULL default '', `date` varchar(10)…
1.鼠标左键phpStudy图标,点击mysql管理器,如下图 2.选择Mysql-Front,选择localhost进入,可以看到本地建立的数据库.然后新建一个数据库,如下图: 3.在新建的数据库上鼠标右键->新建->表格,如下图 4.新增字段,如下图 5.建好表之后就是添加数据,添加是在每一栏上右键->插入记录 6.数据库的一些基本语法: (1)增,在lqf_admin表中插入记录,可以在SQL编写器中编写: insert into lqf_admin(id,userName,pas…
当向 MySQL 数据库插入一条带有中文的数据形如 insert into employee values(null,'张三','female','1995-10-08','2015-11-12','Sales',2000,'是个好员工!'); 出现乱码时,可以使用语句 show variables like 'character%'; 来查看当前数据库的相关编码集. 从上图中可以看到 MySQL 有六处使用了字符集,分别为:client .connection.database.results…
1.group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果.比较抽象,难以理解. 通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来.要返回哪些列,由函数参数(就是字段名)决定.分组必须有个标准,就是根据group by指定的列进行分组. group_concat函数应该是在内部执行了group by语句,这是我的猜测. 1.测试语句: select group_concat(town) from p…
一.将ACCESS表导出为CSV文件:Select * INTO [TEXT;FMT=CSV;DELIMITED;HDR=YES;DATABASE=E:\temp\].test.csv FROM Sheet2; 二.导入CSV文件并生成新的ACCESS表:Select * INTO test FROM [TEXT;FMT=CSV;DELIMITED;HDR=YES;DATABASE=e:\Temp\].[test.csv]; 三.将CSV文件追加到现有的ACCESS表中:Insert INTO…
publicclassTrycatchTest{ publicstaticvoidmain(String[]args){ System.out.println("x:"+newTrycatchTest().test()); } inttest(){ intx=1; try{ System.out.println("trystart"); x++; returnx; }finally{ System.out.println("finallystart&quo…
--当天: --最近三天: --本周: select * from T_news WHERE (DATEPART(wk, addtime) = DATEPART(wk, GETDATE())) AND (DATEPART(yy, addtime) = DATEPART(yy, GETDATE())) --注意:此时不能用 datediff 差值为7,因为,datediff只表示间隔数 --本月: select * from T_news WHERE (DATEPART(yy, addtime)…
select sysdate from dual;select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; select to_char(sysdate,'yyyy-mm-dd hh24:mi') from dual; select to_char(sysdate, 'yyyy' ) from dual; --年 select to_char(sysdate, 'MM' ) from dual; --月 select to_char(s…
Oracle中的(+) 是外连接,如果在等号的左边就是左连接 和如果在等号的右边就是右连接 和left join ,right join 比较相似.....where sn (+) ='5620030820' 左查询......where sn ='5620030820' (+) 右查询 条件关联时,一般只列出表中满足连接条件的数据.如果条件的一边出现(+),则可列出该表中在条件另一侧的数据为空的那些记录. 比如两个表:员工表和工资表.员工表中有总经理.A.B.C四条记录,工资表中只有A.B.C…
添加字段 1.去除原id的自增功能:ALTER TABLE A_A MODIFY COLUMN id int(10) NOT NULL FIRST ; 2.添加名称为cstId,类型为bigint的字段:alter table A_A add cstId integer(100) NOT NULL; 3.设置cstId为建 保证唯一性:alter table A_A add index(cstId); 4.将字段cstId 设置为自增:alter table A_A modify cstId b…
一.问题描述 如下SQL: INSERT INTO tmp(val)VALUES('a&b'); 执行过程中会出现如下提示: 点击"确定"过后我们查看表中的数据: b后面的字符串没有插入进去. 二.原因解析--替代变量 SQL*PLUS中默认的"&"表示替代变量,当写入&时,数据库会要求其替换成其它的值. 如,你可以定义: 这样插入数据库中的值就是ahellob. 三.解决方法 解决方法1:关闭变量替换 如下所示: SET DEFINE OF…
System.IO.FileStream fs = new FileStream("1.txt", FileMode.Open); string strConn = "Data Source=MOFEI-PC;Initial Catalog=Test;Integrated Security=True"; SqlConnection conn = new SqlConnection(strConn); ; string sql = @"INSERT INTO…
关于sql中单引号和双引号的使用,来一点说明: 1. 查询列的别名如果含有汉字或者特殊字符(如以'_'开头),需要用双引号引起来.而且只能用双引号,单引号是不可以的. 2. 如果想让某列返回固定的值,而且这个返回值是varchar类型的,返回值需要用单引号引起来.而且只能用单引号,双引号是不可以的. 例子1: a)查询列中有"_"开头的列名时,需要用双引号引起来. b)使用"case"关键字,根据分数直接判断是否及格. create table tbl_score(…
USE tmpgo CREATE TABLE Employee( ID int identity(1,1), EmpName varchar(20), EmpSalary varchar(10), EmpDepartment varchar(20) ); INSERT INTO EmployeeSELECT '张三','5000','开发部' UNION ALLSELECT '李四','2000','销售部' UNION ALLSELECT '王麻子','2500','销售部' UNION AL…