我在oracle的1个表中有一个复合主键.我想为我的第二个表中的一个表项创建一个外键,该表引用第一个表中的复合主键.我收到错误ORA-02256.关于如何进入这个的任何想法?
CREATE TABLE groupspersonx (
personid number,
groupid number,
CONSTRAINT pk_persongroupid PRIMARY KEY(personid, groupid)
);
CREATE TABLE restrictedgroups (
groupid number,
name varchar2(50),
dateadded date,
since date,
notes varchar2(1024),
CONSTRAINT pk_groupid PRIMARY KEY(groupid),
CONSTRAINT fk_persongroup FOREIGN KEY(groupid) REFERENCES groupspersonx(personid, groupid)
);
Run Code Online (Sandbox Code Playgroud) 我创建了一个表,其中一列是地址.然后我创建了一个带有WHERE CONTAINS子句的视图,该子句指出select只能在包含特定单词的地址上执行.
然后,我在原始表上创建了一个地址列的索引.
它说索引创建了.
当我输入
select * from myview
Run Code Online (Sandbox Code Playgroud)
它说
drg-10599: column is not indexed.
Run Code Online (Sandbox Code Playgroud)
知道为什么这不起作用吗?
我试图在oracle中创建一个表,它将接受2个而且只有2个字符.我尝试使用char(2),但如果我在insert语句中输入1个字符,它将接受它.如何让oracle只接受2个精确字符的任何插入并拒绝1和3及更高的字符?我在互联网上搜索过,似乎无法找到答案.
谢谢!克里斯托弗
如何从此代码的输出中删除破折号?
import datetime
date = datetime.date(2014,1,1)
for i in range(50):
date += datetime.timedelta(days=1)
print(date)
Run Code Online (Sandbox Code Playgroud)
我希望输出为:
20140102
20140103
20140104
20140105
20140106
Run Code Online (Sandbox Code Playgroud) 下面的代码删除任何电话号码列中的任何破折号。如果电话号码以 1 开头,我如何还删除这些列中电话号码的第一个字符。我基本上希望所有十位数字都没有前导 1。
import pandas as pd
import numpy as np
import re
df = pd.read_csv('test2.csv')
cols_to_check = ['Phone', 'phone', 'Phone.1']
df[cols_to_check] = df[cols_to_check].replace({'-':''}, regex=True)
df.to_csv('testnew.csv', mode = 'w', index=False)
Run Code Online (Sandbox Code Playgroud) 我试图在一列上使用两个不同的字符串函数(initcap和trim),我希望它只显示应用了两个函数的一列.一般来说,如何在一列上使用两个或多个函数?
我编写了一个包含存储过程和REF游标的包.我现在可以通过这个光标显示表格中的所有列.我希望能够插入一个循环,如果满足某个条件,七个列中的四个将显示四个星号,其余列将显示其正常数据.
例如,我有一个名为country的列.每当美国出现在记录中时,(empid,ss,address,dept)的四列将只需显示****,而其余列将显示为正常.如果非美国的国家/地区在记录中,则所有列都将正常显示数据.我知道有一个noprint函数,但我似乎无法弄清楚如何只显示星号.