1.select to_timestamp('2003-10-24 10:48:45.656000','yyyy-mm-dd hh24:mi:ssxff') from dual;
'yyyy-mm-dd hh24:mi:ssxff'格式?
2.数字格式化的设置为什么只能使用9开头,使用其他数字都会报:“ 非法的 FORMAT 字符串......”
SQL> set numformat 1000000000000000000000
SP2-0246: 非法的 FORMAT 字符串"1000000000000000000000"
SQL> set numformat 9999999999999999999;
SQL>
3.name char:='';--char未指定长度,默认为chr(1) 那么默认的numbe的长度是多少呢?
4.varchar2(20)与varchar2(20 char)的区别?
5.查看跟踪日志?告警日志?(windows和linux)
6.decimal(8,2)?
7.convert函数的用法?
8.在存储过程中,输出参数不初始化有没有影响?
9.临时表空间有什么用?
10.解释下下面查询中的“Typ=13 Len=8: 218,7,5,5,10,48,25,0”含义
SQL> select dump(sysdate) from dual;
DUMP(SYSDATE)
--------------------------------------------------------------------------------
Typ=13 Len=8: 218,7,5,5,10,48,25,0望高手们帮忙解答!谢谢!
每题10分。
'yyyy-mm-dd hh24:mi:ssxff'格式?
2.数字格式化的设置为什么只能使用9开头,使用其他数字都会报:“ 非法的 FORMAT 字符串......”
SQL> set numformat 1000000000000000000000
SP2-0246: 非法的 FORMAT 字符串"1000000000000000000000"
SQL> set numformat 9999999999999999999;
SQL>
3.name char:='';--char未指定长度,默认为chr(1) 那么默认的numbe的长度是多少呢?
4.varchar2(20)与varchar2(20 char)的区别?
5.查看跟踪日志?告警日志?(windows和linux)
6.decimal(8,2)?
7.convert函数的用法?
8.在存储过程中,输出参数不初始化有没有影响?
9.临时表空间有什么用?
10.解释下下面查询中的“Typ=13 Len=8: 218,7,5,5,10,48,25,0”含义
SQL> select dump(sysdate) from dual;
DUMP(SYSDATE)
--------------------------------------------------------------------------------
Typ=13 Len=8: 218,7,5,5,10,48,25,0望高手们帮忙解答!谢谢!
每题10分。
1 的确是 格式
3 number不指定精度,默认是38
8 关键看 你的输入参数 在过程是是否有用到 如果没有用到 不影响的
9 查询时候 用于从放临时查询出来的数据的吧 比如子查询 表连接等(貌似是)
其他的不确定
'yyyy-mm-dd hh24:mi:ssxff'格式?
>>>>> 指的就是timestamp的格式描述.到微秒一级。
2.数字格式化的设置为什么只能使用9开头,使用其他数字都会报:“ 非法的 FORMAT 字符串......”
SQL> set numformat 1000000000000000000000
SP2-0246: 非法的 FORMAT 字符串"1000000000000000000000"
SQL> set numformat 9999999999999999999;
SQL>
>>>>>> 内部约定,记住就行了
3.name char:='';--char未指定长度,默认为chr(1) 那么默认的numbe的长度是多少呢?
>>>>>>38
4.varchar2(20)与varchar2(20 char)的区别?
>>>>>>
varchar2(20) 等效于 varchar2(20 byte), 为20字节宽度限制
varchar2(20 char)为20字符宽限制,如果是多字节字符,那么它的最大长度就不止20个字节宽了
5.查看跟踪日志?告警日志?(windows和linux)
>>>>>>
alert log,位于$ORACLE_HOME/admin/<sid>/udump和bdump下边的trc文件。6.decimal(8,2)?
>>>>>>
有效数字最大8,小数2位,也就是说整数部分最大宽度为6。
7.convert函数的用法?
>>>>>>
用于字符集转换,如将gbk字符串转换为PC850字符集
SQL> select convert('abc中国', 'ZHS16GBK', 'WE8PC850') from dual;CONVERT('A
----------
abcíe╣·8.在存储过程中,输出参数不初始化有没有影响?
>>>>>>不初始化可以,但是必须得有定义。
9.临时表空间有什么用?
>>>>>>用于排序,临时表,查询和存放一些缓冲区数据.10.解释下下面查询中的“Typ=13 Len=8: 218,7,5,5,10,48,25,0”含义
SQL> select dump(sysdate) from dual;
DUMP(SYSDATE)
--------------------------------------------------------------------------------
Typ=13 Len=8: 218,7,5,5,10,48,25,0
>>>>>> 这个问题稍为复杂一点,稍看仔细一点。
type = 13,表示,这是一个DATETIME类型(oracle内部定义的)
总共8个字节。最末位为0,忽略。
218,7 (两个字节),描述年份,拼起来16进制为:DA07,使用大端表示为:07DA,其10进制值刚好是2010,所以是2010年。为何用大端,因为网络字节序始终是以大端表示。
5, 5月
5, 5日
10,10时
48, 48分
25, 25秒Oracle内部表示DATE类型的数据结构为:(供参考:)
struct OCITime
{
ub1 OCITimeHH; /* hours; range is 0 <= hours <=23 */
ub1 OCITimeMI; /* minutes; range is 0 <= minutes <= 59 */
ub1 OCITimeSS; /* seconds; range is 0 <= seconds <= 59 */
};
typedef struct OCITime OCITime;/*
* OCITime - OCI TiMe portion of date
*
* This structure should be treated as an opaque structure as the format
* of this structure may change. Use OCIDateGetTime/OCIDateSetTime
* to manipulate time portion of OCIDate.
*/struct OCIDate
{
sb2 OCIDateYYYY; /* gregorian year; range is -4712 <= year <= 9999 */
ub1 OCIDateMM; /* month; range is 1 <= month < 12 */
ub1 OCIDateDD; /* day; range is 1 <= day <= 31 */
OCITime OCIDateTime; /* time */
};
typedef struct OCIDate OCIDate;