- Linux MariaDB使用OpenSSL安装SSL证书
Meta39
MySQLOracleMariaDBLinuxWindowsssllinuxmariadb
进入到证书存放目录,批量删除.pem证书警告:确保已经进入到证书存放目录find.-typef-iname\*.pem-delete查看是否安装OpenSSLopensslversion没有则安装yuminstallopensslopenssl-devel开启SSL编辑/etc/my.cnf文件(没有的话就创建,但是要注意,在/etc/my.cnf.d/server.cnf配置了datadir的,
- openssl+keepalived安装部署
_小亦_
项目部署keepalivedopenssl
文章目录OpenSSL安装下载地址编译安装修改系统配置版本Keepalived安装下载地址安装遇到问题安装完成配置文件keepalived运行检查运行状态查看系统日志修改服务service重新加载systemd检查配置文件语法错误OpenSSL安装下载地址考虑到后面设备可能没法连接到外网,所以采用安装包的方式进行部署,下载地址:https://www.openssl.org/source/old/
- k8s证书过期问题处理
olina_qin
kubernetes容器云原生
k8s证书过期问题处理opensslx509-in/etc/kubernetes/pki/apiserver.crt-noout-dateskubeadmcertsrenewallsystemctlrestartkubeleopensslx509-in/etc/kubernetes/pki/apiserver.crt-noout-text|grep"NotAfter"cp/etc/kubernet
- 处理绿盟科技安全评估的系统漏洞
自我修炼的小石头
数据库运维开发工具
如下图一次扫描,中度风险39个,这个是必须要处理的.其中mysql占了36个,一看这个感觉整个人都不好了.但是最后解决的办法也很简单,就是升级.系统版本Redhat7.31.telnet因为要升级openssh,openssl,为了避免意外,首先要开启telnet服务,并把所有相关的包上传到服务器.1.1确认是否安装了telnet和xinetd(默认是没有安装)rpm-qatelnet*rpm-q
- ios私钥证书(p12)导入失败,Windows OpenSSl 1.1.1 下载
书边事.
其他
ios私钥证书(p12)导入失败如果你用的OpenSSL版本是v3那么恭喜你V3必然报这个错,解决办法将OpenSSL3降低成v1。WindowsOpenSSl1.1.1下载阿里云网盘下载地址:OpenSSLV1
- springBoot 集成https
ourLang
javaspringboothttpsjava
springBoot集成https1、springBoot默认的证书格式pringBoot需要.p12或.jks格式的证书。如果你只有.pem和.key文件,可以使用openssl工具将它们转换成.p12文件2、转换.p12我的证书文件如下,需要转换2.1下载opensslhttps://slproweb.com/download/Win64OpenSSL-3_3_2.exe2.2执行命令生成.p
- npm dev时遇到错误“error:0308010C:digital envelope routines::unsupported“的解决办法
_Eolin
npm前端node.js
报错:opensslErrorStack:['error:03000086:digitalenveloperoutines::initializationerror'], library:'digitalenveloperoutines', reason:'unsupported', code:'ERR_OSSL_EVP_UNSUPPORTED'顺便看了一下错误堆栈,发现是一个Node的内核文件抛
- flask下https教程
云帆@
flaskflaskhttpspython
一、定义linux下flaskhttps协议二、实现linux下flaskhttps协议生成SSL证书和密钥文件。您可以使用工具如openssl来生成自签名SSL证书和密钥文件。运行以下命令生成证书和密钥文件:opensslreq-x509-newkeyrsa:4096-nodes-outcert.pem-keyoutkey.pem-days3652.将生成的cert.pem和key.pem文件放
- lnmt架构
有点小忧郁
Linux课程
lnmt架构安装nginx//创建系统用户nginx[root@localhost~]#useradd-r-M-s/sbin/nologinnginx//安装依赖环境[root@localhost~]#yum-yinstallpcre-developensslopenssl-develgd-develgccgcc-c++[root@localhost~]#yum-ygroupsmarkinstal
- CTF 竞赛密码学方向学习路径规划
David Max
CTF学习笔记密码学ctf信息安全
目录计算机科学基础计算机科学概念的引入、兴趣的引导开发环境的配置与常用工具的安装WattToolkit(Steam++)、机场代理Scoop(Windows用户可选)常用Python库SageMathLinux小工具yafuOpenSSLMarkdown编程基础Python其他编程语言、算法与数据结构(可选)数学基础离散数学与抽象代数复杂性分析密码学的正式学习兴趣的培养做题小技巧系统学习需要了解并
- telnet yum linux安装,CentOS 7 LINUX下安装telnet服务
WebWarrior
telnetyumlinux安装
在CentOS7下升级了openssl和openssh,顺便装了下telnet服务。#安装telnet避免ssh无法登录yum-yinstallxinetdtelnettelnet-server在telnet情况下root登录提示loginincorrectlinux默认情况下root用户使用telnet是登录不了的,需要修改/etc/secruetty文件#允许root账号登陆vi/etc/se
- 普通用户下Nginx 安装与启动教程
ascarl2010
Nginxnginx运维linux
Nginx安装与启动教程本教程介绍如何在Linux环境中,通过root和qrcode用户进行Nginx的安装、配置与管理。1.以root用户登录并执行以下命令安装依赖sudoyuminstall-ygccmakepcre-develzlib-developenssl-develwget这些依赖是为了编译和安装Nginx所必需的库和工具。2.切换到qrcode用户接下来,我们将切换到qrcode用户
- macOS 安装 Homebrew
玉梅小洋
macOS工具使用macos
Homebrew是macOS上非常流行的包管理工具,可以用来安装各种软件和库。Homebrew安装/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"使用Homebrew安装库例如,如果你想安装openssl库,可以使用以下命令:brewinstallopenssl
- ubuntu编译安装python_Ubuntu16 编译安装Python3.6
weixin_39623671
一、下载替换Ubuntu16的阿里源,参考官方配置apt-getupate#安装必要组件apt-getinstallopensslhtopiftoplibssl-devzlib1g-devmakegccwgetpython3-pipwgethttps://www.python.org/ftp/python/3.6.9/Python-3.6.9.tar.xz二、解压xz-dPython-3.6.9.
- paramiko和cryptography的关系
0914_h
安全python3cryptography
1、错误:fromcryptography.hazmat.bindings._constant_timeimportlibModuleNotFoundError:解答:先安装:sudoapt-getinstalllibffi-dev之后安装:sudopip3installcryptographysudoapt-getinstallopenssl还得安装:pipinstallparamiko2、
- Anaconda 没办法安装和更新(CondaHTTPError: HTTP 000 CONNECTION FAILED for url)
HappyJoo
CondaHTTPError:HTTP000CONNECTIONFAILEDforurl不知道为什么,在window10更新之后,亦或者是不知道什么时候,很久没有用anaconda了,反正就是不能update或者install任何东西,会出现上面这个提示,下面还有一堆错误我没有贴上来,现在问题解决了,之前的错误忘了复制~解决方法:反正就是去安装个openssl就可以了。我贴一个知乎的回答~Cond
- 使用 OpenSSL 创建自签名证书
乐优刘@0724
nginx运维
mkdir-p/etc/nginx/conf.d/cert#2、创建私钥opensslgenrsa-des3-outhttps.key1024提示输入字符:输入字符:rancher[root@ocean-app-1a-01cert]#opensslgenrsa-des3-outhttps.key1024GeneratingRSAprivatekey,1024bitlongmodulus…+++++
- fastdfs 04 安装fastdfs-nginx-module支持http
Herman7z
在余大的GitHub上下载好fastdfs-nginx-module上传到我们的CentOS中就可以开始安装了,在安装nginx之前需要先安装一些模块依赖的lib库,直接贴出安装代码:yum-yinstallpcrepcre-develyum-yinstallzlibzlib-develyum-yinstallopensslopenssl-devel依次装好这些依赖之后就可以开始安装nginx了。
- openssl生成数字证书
wacpguo
网络服务器运维
openssl生成CA证书_opensslindex.txt:nosuchfileordirectory-CSDN博客https://blog.csdn.net/cowbin2012/article/details/100134114
- 在 Windows下用 Visual Studio 编译 OpenSSL 1.1.0
Oo璀璨星海oO
PKI
到OpenSSL官方网站下载OpenSSL源代码包1、下载openssl-1.1.0.tar.gz2、安装ActivePerl,可以到http://www.activestate.com/activeperl/downloads下载最新版本,需要用到perl解释器。注:Perl最低版本要求5.10以上,WindowsXP用户最后支持版本ActivePerl5.20.2.2002版本3、使用VS20
- nginx正向代理-内网服务器通过代理服务器访问外部网络
kiboyiscoming
JAVAnginx正向代理nginxjavalinux
#1.安装编译工具yuminstallgccgcc-c++make-yyuminstallrpm-buildrpmdevtools-y2.安装依赖yuminstallpcre-develpcre-yyuminstallzlib-develzlib-yyuminstallopenssl-developenssl-yyuminstallredhat-lsb-core-yyuminstallgit-y3
- centos7安装python3.11
林光虚霁晓
补充python3.11
1安装依赖sudoyum-yupdatesudoyum-yinstallopenssl-develbzip2-develexpat-develgdbm-develreadline-develsqlite-develpsmisclibffi-devel-ysudoyum-ygroupinstall"DevelopmentTools"2安装必需的openssl>=1.1.1wgethttps://ww
- Node:解决Error: error:0308010C:digital envelope routines::unsupported的解决方法
码上言
分享vue
问题描述在使用vuepress搭建博客的时候,运行项目发现报错了,检查了node的版本是18+,之前用的是16或14的版本,现在报:Error:error:0308010C:digitalenveloperoutines::unsupported错误。查找了一些资料,大致明白了报错的原因:主要是因为node17版本发布了OpenSSL3.0对算法和秘钥大小增加了更为严格的限制,node17之前版本
- error:0308010C:digital envelope routines::unsupported【超详细图解】
舊時王謝堂前燕
前端node.jsnpm
目录一、报错信息二、分析原因三、解决方案一、报错信息二、分析原因node.js18不兼容oppsll,node.jsv17以上版本中最近发布的OpenSSL3.0,而OpenSSL3.0对允许算法和密钥大小增加了严格的限制三、解决方案方案1:打开终端,直接输入Linux&MacOS:exportNODE_OPTIONS=--openssl-legacy-providerWindows:setNOD
- Win生成git的公私钥
J不A秃V头A
Javagitjava
在Windows上生成Git的公钥和私钥,可以通过几种不同的方法实现,以下是使用最常见工具(如GitBash、PuTTYgen和OpenSSL)的详细步骤:一、使用GitBash生成密钥对安装GitforWindows:如果尚未安装Git,请从Git官网下载并安装GitforWindows。安装过程中,请确保选择包含GitBash的选项。打开GitBash:安装完成后,找到并打开GitBash。生
- 关于SM2算法 ASN.1编码 踩过的坑 - 加密
softt
c语言密码学
在某些项目开发过程中,或多或少很多底层安全OS系统或者算法库,都引入了openssl或者gmssl的一些内容来实现算法,这样就导致算法运算结果并不是完全按照国密标准的裸数据,而是经过编码之后的数据,编码之间的对齐对上层业务系统互通带来的一些挑战。以一个手机TEE里面TA实际出现的场景举例,APP应用访问TA进行算法运算,在TA里面进行SM2算法加密之后,正常情况下TA结果为C1x+C1y+C3(H
- openssl从p12提取公钥、私钥和证书
promise524
网络协议openssl证书经验分享bashlinuxtcp/ip
OpenSSL可以很方便地从.p12(PKCS#12)文件中提取公钥、私钥和证书,并以适当的格式保存它们,方便进一步使用。提取私钥从.p12文件中提取私钥,并将其保存到一个.key文件中opensslpkcs12-inyourfile.p12-nocerts-nodes-outprivate.key-inyourfile.p12:指定要提取的.p12文件。-nocerts:不提取证书,仅提取私钥。
- linux安装python3.11.9
BUG记录机
pythonlinuxpython3.11运维
下载wgethttps://www.python.org/ftp/python/3.11.9/Python-3.11.9.tgz解压tar-zxfPython.tgz准备编译环境yum-yinstallgccmakezlibzlib-devellibffilibffi-develreadline-developenssl-developenssl11openssl11-devel安装openssl
- aes加密字符串 openssl_aes加解密(openssl方式)
Yufeng Bai
aes加密字符串openssl
/***说明:**User:胡熔*Date:2018/11/5*Time:15:47*/include'aes.class.php';$str='这是加密前的字符';$key='http://www.hu-rong.com';$aes=newAes($key);$encrypted=$aes->encrypt($str);echo'要加密的字符串:'.$str.'加密key为'.$key.'加密后
- Nginx使用命令安装说明
lytcreate.
Linuxnginx服务器运维
1.获取安装包wgethttps://nginx.org/download/nginx-1.20.2.tar.gz2.解压安装包tar-zxvfnginx-1.20.2.tar.gz3.安装依赖yum-yinstallgccpcre-develzlib-developensslopenssl-devel4.安装nginxcdnginx-1.20.2/./configure--prefix=/usr
- 深入浅出Java Annotation(元注解和自定义注解)
Josh_Persistence
Java Annotation元注解自定义注解
一、基本概述
Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。
更通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或
- mysql优化特定类型的查询
annan211
java工作mysql
本节所介绍的查询优化的技巧都是和特定版本相关的,所以对于未来mysql的版本未必适用。
1 优化count查询
对于count这个函数的网上的大部分资料都是错误的或者是理解的都是一知半解的。在做优化之前我们先来看看
真正的count()函数的作用到底是什么。
count()是一个特殊的函数,有两种非常不同的作用,他可以统计某个列值的数量,也可以统计行数。
在统
- MAC下安装多版本JDK和切换几种方式
棋子chessman
jdk
环境:
MAC AIR,OS X 10.10,64位
历史:
过去 Mac 上的 Java 都是由 Apple 自己提供,只支持到 Java 6,并且OS X 10.7 开始系统并不自带(而是可选安装)(原自带的是1.6)。
后来 Apple 加入 OpenJDK 继续支持 Java 6,而 Java 7 将由 Oracle 负责提供。
在终端中输入jav
- javaScript (1)
Array_06
JavaScriptjava浏览器
JavaScript
1、运算符
运算符就是完成操作的一系列符号,它有七类: 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)、算术运算符(+,-,*,/,++,--,%)、比较运算符(>,<,<=,>=,==,===,!=,!==)、逻辑运算符(||,&&,!)、条件运算(?:)、位
- 国内顶级代码分享网站
袁潇含
javajdkoracle.netPHP
现在国内很多开源网站感觉都是为了利益而做的
当然利益是肯定的,否则谁也不会免费的去做网站
&
- Elasticsearch、MongoDB和Hadoop比较
随意而生
mongodbhadoop搜索引擎
IT界在过去几年中出现了一个有趣的现象。很多新的技术出现并立即拥抱了“大数据”。稍微老一点的技术也会将大数据添进自己的特性,避免落大部队太远,我们看到了不同技术之间的边际的模糊化。假如你有诸如Elasticsearch或者Solr这样的搜索引擎,它们存储着JSON文档,MongoDB存着JSON文档,或者一堆JSON文档存放在一个Hadoop集群的HDFS中。你可以使用这三种配
- mac os 系统科研软件总结
张亚雄
mac os
1.1 Microsoft Office for Mac 2011
大客户版,自行搜索。
1.2 Latex (MacTex):
系统环境:https://tug.org/mactex/
&nb
- Maven实战(四)生命周期
AdyZhang
maven
1. 三套生命周期 Maven拥有三套相互独立的生命周期,它们分别为clean,default和site。 每个生命周期包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,用户和Maven最直接的交互方式就是调用这些生命周期阶段。 以clean生命周期为例,它包含的阶段有pre-clean, clean 和 post
- Linux下Jenkins迁移
aijuans
Jenkins
1. 将Jenkins程序目录copy过去 源程序在/export/data/tomcatRoot/ofctest-jenkins.jd.com下面 tar -cvzf jenkins.tar.gz ofctest-jenkins.jd.com &
- request.getInputStream()只能获取一次的问题
ayaoxinchao
requestInputstream
问题:在使用HTTP协议实现应用间接口通信时,服务端读取客户端请求过来的数据,会用到request.getInputStream(),第一次读取的时候可以读取到数据,但是接下来的读取操作都读取不到数据
原因: 1. 一个InputStream对象在被读取完成后,将无法被再次读取,始终返回-1; 2. InputStream并没有实现reset方法(可以重
- 数据库SQL优化大总结之 百万级数据库优化方案
BigBird2012
SQL优化
网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。
这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
2.应尽量避免在 where
- jsonObject的使用
bijian1013
javajson
在项目中难免会用java处理json格式的数据,因此封装了一个JSONUtil工具类。
JSONUtil.java
package com.bijian.json.study;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
- [Zookeeper学习笔记之六]Zookeeper源代码分析之Zookeeper.WatchRegistration
bit1129
zookeeper
Zookeeper类是Zookeeper提供给用户访问Zookeeper service的主要API,它包含了如下几个内部类
首先分析它的内部类,从WatchRegistration开始,为指定的znode path注册一个Watcher,
/**
* Register a watcher for a particular p
- 【Scala十三】Scala核心七:部分应用函数
bit1129
scala
何为部分应用函数?
Partially applied function: A function that’s used in an expression and that misses some of its arguments.For instance, if function f has type Int => Int => Int, then f and f(1) are p
- Tomcat Error listenerStart 终极大法
ronin47
tomcat
Tomcat报的错太含糊了,什么错都没报出来,只提示了Error listenerStart。为了调试,我们要获得更详细的日志。可以在WEB-INF/classes目录下新建一个文件叫logging.properties,内容如下
Java代码
handlers = org.apache.juli.FileHandler, java.util.logging.ConsoleHa
- 不用加减符号实现加减法
BrokenDreams
实现
今天有群友发了一个问题,要求不用加减符号(包括负号)来实现加减法。
分析一下,先看最简单的情况,假设1+1,按二进制算的话结果是10,可以看到从右往左的第一位变为0,第二位由于进位变为1。
 
- 读《研磨设计模式》-代码笔记-状态模式-State
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类
状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况
把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化
如果在
- CUDA程序block和thread超出硬件允许值时的异常
cherishLC
CUDA
调用CUDA的核函数时指定block 和 thread大小,该大小可以是dim3类型的(三维数组),只用一维时可以是usigned int型的。
以下程序验证了当block或thread大小超出硬件允许值时会产生异常!!!GPU根本不会执行运算!!!
所以验证结果的正确性很重要!!!
在VS中创建CUDA项目会有一个模板,里面有更详细的状态验证。
以下程序在K5000GPU上跑的。
- 诡异的超长时间GC问题定位
chenchao051
jvmcmsGChbaseswap
HBase的GC策略采用PawNew+CMS, 这是大众化的配置,ParNew经常会出现停顿时间特别长的情况,有时候甚至长到令人发指的地步,例如请看如下日志:
2012-10-17T05:54:54.293+0800: 739594.224: [GC 739606.508: [ParNew: 996800K->110720K(996800K), 178.8826900 secs] 3700
- maven环境快速搭建
daizj
安装mavne环境配置
一 下载maven
安装maven之前,要先安装jdk及配置JAVA_HOME环境变量。这个安装和配置java环境不用多说。
maven下载地址:http://maven.apache.org/download.html,目前最新的是这个apache-maven-3.2.5-bin.zip,然后解压在任意位置,最好地址中不要带中文字符,这个做java 的都知道,地址中出现中文会出现很多
- PHP网站安全,避免PHP网站受到攻击的方法
dcj3sjt126com
PHP
对于PHP网站安全主要存在这样几种攻击方式:1、命令注入(Command Injection)2、eval注入(Eval Injection)3、客户端脚本攻击(Script Insertion)4、跨网站脚本攻击(Cross Site Scripting, XSS)5、SQL注入攻击(SQL injection)6、跨网站请求伪造攻击(Cross Site Request Forgerie
- yii中给CGridView设置默认的排序根据时间倒序的方法
dcj3sjt126com
GridView
public function searchWithRelated() {
$criteria = new CDbCriteria;
$criteria->together = true; //without th
- Java集合对象和数组对象的转换
dyy_gusi
java集合
在开发中,我们经常需要将集合对象(List,Set)转换为数组对象,或者将数组对象转换为集合对象。Java提供了相互转换的工具,但是我们使用的时候需要注意,不能乱用滥用。
1、数组对象转换为集合对象
最暴力的方式是new一个集合对象,然后遍历数组,依次将数组中的元素放入到新的集合中,但是这样做显然过
- nginx同一主机部署多个应用
geeksun
nginx
近日有一需求,需要在一台主机上用nginx部署2个php应用,分别是wordpress和wiki,探索了半天,终于部署好了,下面把过程记录下来。
1. 在nginx下创建vhosts目录,用以放置vhost文件。
mkdir vhosts
2. 修改nginx.conf的配置, 在http节点增加下面内容设置,用来包含vhosts里的配置文件
#
- ubuntu添加admin权限的用户账号
hongtoushizi
ubuntuuseradd
ubuntu创建账号的方式通常用到两种:useradd 和adduser . 本人尝试了useradd方法,步骤如下:
1:useradd
使用useradd时,如果后面不加任何参数的话,如:sudo useradd sysadm 创建出来的用户将是默认的三无用户:无home directory ,无密码,无系统shell。
顾应该如下操作:
- 第五章 常用Lua开发库2-JSON库、编码转换、字符串处理
jinnianshilongnian
nginxlua
JSON库
在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成
- Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
yaerfeng1989
timerquartz定时器
原创整理不易,转载请注明出处:Spring定时器配置的两种实现方式OpenSymphony Quartz和java Timer详解
代码下载地址:http://www.zuidaima.com/share/1772648445103104.htm
有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。
1.Java Timer定时
首先继承jav
- Linux下df与du两个命令的差别?
pda158
linux
一、df显示文件系统的使用情况,与du比較,就是更全盘化。 最经常使用的就是 df -T,显示文件系统的使用情况并显示文件系统的类型。 举比例如以下: [root@localhost ~]# df -T Filesystem Type &n
- [转]SQLite的工具类 ---- 通过反射把Cursor封装到VO对象
ctfzh
VOandroidsqlite反射Cursor
在写DAO层时,觉得从Cursor里一个一个的取出字段值再装到VO(值对象)里太麻烦了,就写了一个工具类,用到了反射,可以把查询记录的值装到对应的VO里,也可以生成该VO的List。
使用时需要注意:
考虑到Android的性能问题,VO没有使用Setter和Getter,而是直接用public的属性。
表中的字段名需要和VO的属性名一样,要是不一样就得在查询的SQL中
- 该学习笔记用到的Employee表
vipbooks
oraclesql工作
这是我在学习Oracle是用到的Employee表,在该笔记中用到的就是这张表,大家可以用它来学习和练习。
drop table Employee;
-- 员工信息表
create table Employee(
-- 员工编号
EmpNo number(3) primary key,
-- 姓