草庐IT

头歌 数据库系统实验 答案 善用目录

出色的你csdw 2023-04-10 原文

头歌 数据库系统实验 答案 善用目录

其他作业链接

非盈利文章,谢谢大家的分享和支持,如果大家有想要投稿的答案,也可以点击下面链接联系作者。

点击联系作者

作者博客

选择题加粗为正确答案

头歌java实训答案集

头歌MySQL数据库实训答案 有目录

SQL Server 实验1.1:创建和使用数据库

第1关 走进SQL Server2012

暂无参考代码

第2关 使用 create database 单条语句创建数据库

--********** 创建数据库student **********--
--********** Begin **********--
create database student


--********** End **********--
go

第3关 创建含自定义数据文件的数据库

--********** 创建数据库student **********--
--********** Begin **********--

create database student
on 
(name=studentdata1,
filename='/home/studentdata1.mdf',
maxsize=10MB
),
(name=studentdata2,
filename='/home/studentdata2.mdf',
maxsize=10MB
)

--********** End **********--
go

第4关 向数据库中新增数据文件和日志文件

--********** 创建数据库student **********--
--********** Begin **********--

create database student

--********** End **********--
Go

--********** 添加数据文件 **********--
--********** Begin **********--

     alter database student
      add file
       (
        name=studentdata1,
    filename= '/home/studentdata1.ndf',
        size=6MB,
        maxsize=20MB,
        filegrowth=1MB
      )



--********** End **********--
Go

--********** 添加日志文件 **********--
--********** Begin **********--

 alter database student
      add log file
       (
       name=studentlog1,
    filename= '/home/studentdata1.ldf',
        maxsize=20MB,
        filegrowth=1MB
      )


--********** End **********--
Go

第5关 添加一个数据文件到指定文件组

--********** 创建数据库student **********--
--********** Begin **********--
create database student

--********** End **********--
go
--**********新建文件组**********--
--********** Begin **********--

    
       
       alter database student
      add filegroup stufilegroup

--********** End **********--
go
--**********向文件组中新增文件**********--
--********** Begin **********--

    
    alter database student
add file
        (
       name='studentdata',
    filename= '/home/studentdata.ndf'
      )
     to FILEGROUP stufilegroup
    

--********** End **********--
go

--**********设置默认文件组**********--
--********** Begin **********--

    
    alter database student

MODIFY FILEGROUP stufilegroup DEFAULT
 
    

--********** End **********--
go

第6关 删除数据库

--********** 创建数据库student **********--
--********** Begin **********--

create database student

--********** End **********--
go

--********** 删除数据库student **********--
--********** Begin **********--

drop database student


--********** End **********--
Go

SQL Server 实验1.2:创建和使用数据表

第1关 创建一个简单的数据表

--********** 创建数据库 **********--
--********** Begin **********--

create database teach

--********** End **********--
go

use teach
--********** 创建数据表 **********--
--********** Begin **********--


create table c
(     
	cno varchar(10),
    cname varchar(10),
	credit float default 2.0 
)

--********** End **********--
go

--********** 评测数据 **********--
--********** Begin **********--

use teach

exec sp_columns  c


--********** End **********--
go



第2关 向数据表中新增列

--********** 创建数据库 **********--
--********** Begin **********--

drop database teach
 create database teach

--********** End **********--
go

use teach
--********** 创建数据表 **********--
--********** Begin **********--

create table s
(
	sno varchar(50),
	sname varchar(50),
	age int,
	dept varchar(50)
)


--********** End **********--
go

use teach
--********** 增加新列 **********--
--********** Begin **********--

alter table s
add birthday date


--********** End **********--
go

--********** 测试数据 **********--
--********** Begin **********--

use teach

--显示列信息--
exec sp_columns  s


--********** End **********--
Go

第3关 修改数据表中的列定义

--********** 创建数据库 **********--
--********** Begin **********--

drop database teach
create database teach
create table s
(
  sno varchar(10),
  sname varchar(10),
  age int,
  dept varchar(10)
)

--********** End **********--
go

use teach
--********** 创建数据表 s **********--
create table s
(
  sno varchar(10),
  sname varchar(10),
  age int,
  dept varchar(10)
)
    
go

use teach
--********** 修改列定义 **********--
--********** Begin **********--

alter table s
alter column sname varchar(50)
alter table s
alter column age char(10)
    
 
--********** End **********--
go

--********** 测试数据 **********--
--********** Begin **********--

use teach

--显示列信息--
exec sp_columns  s


--********** End **********--
Go

第4关 删除数据表中的列

--********** 创建数据库**********--
--********** Begin **********--
drop database teach
create database teach
    

--********** End **********--
go

use teach
--********** 创建数据表 **********--
--********** Begin **********--

create table s
(
	sno varchar(10),
	sname varchar(10),
	age int,
	dept varchar(10)
)

    
    
    
    

--********** End **********--
go

use teach
--********** 删除列定义 **********--
--********** Begin **********--


    alter table s
drop column age
    

--********** End **********--
go

--********** 评测数据 **********--
--********** Begin **********--

use teach

exec sp_columns  s

--********** End **********--
go

SQL Server 实验1.3:创建和使用数据表中约束

第1关 创建带主键和唯一约束的数据表

--********** 创建数据库**********--
--********** Begin **********--
create database teach



--********** End **********--
go

use teach
--********** 创建数据表 s **********--
--********** Begin **********--
create table s
(
    sno char(6) CONSTRAINT sno_pk PRIMARY KEY,
    sname varchar(8) CONSTRAINT sn_uq UNIQUE,
    age int ,
    dept varchar(20)
)



--********** End **********--

--********** 创建数据表 sc **********--
--********** Begin **********--
create table sc
(
    sno char(6) NOT NULL,
    cno varchar(10) NOT NULL,
    grade int ,
    CONSTRAINT sno_cno_pk PRIMARY KEY(sno,cno)
)



--********** End **********--
go

--********** 评测数据 **********--
--********** Begin **********--

use teach

--主键约束--
select b.column_name 主键名
from information_schema.table_constraints a
inner join information_schema.constraint_column_usage b
on a.constraint_name = b.constraint_name
where a.constraint_type = 'PRIMARY KEY' and a.table_name = 's'
go

--主键约束--
select b.column_name 主键名
from information_schema.table_constraints a
inner join information_schema.constraint_column_usage b
on a.constraint_name = b.constraint_name
where a.constraint_type = 'PRIMARY KEY' and a.table_name = 'sc'
go

--唯一约束--
SELECT
  idx.name AS 唯一约束名,
  col.name AS 列名
FROM
  sys.indexes idx
    JOIN sys.index_columns idxCol 
      ON (idx.object_id = idxCol.object_id 
          AND idx.index_id = idxCol.index_id 
          AND idx.is_unique_constraint = 1)
    JOIN sys.tables tab
      ON (idx.object_id = tab.object_id)
    JOIN sys.columns col
      ON (idx.object_id = col.object_id
          AND idxCol.column_id = col.column_id)
where object_name(idx.object_id)='s'
go

--********** End **********--

第2关 创建带外键、检查约束的数据表

--********** 创建数据库 **********--
--********** Begin **********--
create database teach


--********** End **********--
go

use teach
--********** 创建数据表s **********--
--********** Begin **********--
CREATE TABLE s
(
    sno char(6) PRIMARY KEY,
    sname varchar(8) UNIQUE,
    age int NOT NULL,
    dept varchar(20) NOT NULL
)



--********** End **********--

    
--********** 创建数据表sc **********--
--********** Begin **********--
create table sc
(
    sno char(6) foreign key references s(sno),
    cno char(10) NOT NULL,
    grade int check (grade>=0 and grade<=100) NOT NULL,
    PRIMARY KEY(sno,cno)
)



--********** End **********--
go


--********** 测试数据 **********--
--********** Begin **********--

use teach

select
d.name as 外键列,
object_name(b.parent_object_id) as 外键表,
c.name as 主键列,
object_name(b.referenced_object_id) as 主健表
from sys.foreign_keys A
inner join sys.foreign_key_columns B on A.object_id=b.constraint_object_id
inner join sys.columns C on B.parent_object_id=C.object_id and B.parent_column_id=C.column_id 
inner join sys.columns D on B.referenced_object_id=d.object_id and B.referenced_column_id=D.column_id 
where object_name(B.referenced_object_id)='s'

SELECT
  col.name AS check列名,
  chk.definition
FROM
  sys.check_constraints chk
    JOIN sys.tables tab
      ON (chk.parent_object_id = tab.object_id)
    JOIN sys.columns col
      ON (chk.parent_object_id = col.object_id
          AND chk.parent_column_id = col.column_id)
where object_name(chk.parent_object_id)='sc'

--********** End **********--
Go



第3关 向数据表中新增完整性约束

--********** 创建数据库 **********--
--********** Begin **********--
create database teach


--********** End **********--
go

use teach
--********** 创建数据表 **********--
--********** Begin **********--
CREATE TABLE s
(
    sno varchar(50) PRIMARY KEY,
    sname varchar(50) ,
    age int ,
    dept varchar(50) ,
)



--********** End **********--
go

use teach
--********** 增加新约束 **********--
--********** Begin **********--
ALTER TABLE s
ADD check (age between 19 and 23)



--********** End **********--
go

--********** 测试数据 **********--
--********** Begin **********--

use teach

--显示列信息--
exec sp_columns  s

--check约束--
SELECT
  col.name AS check列名,
  chk.definition
FROM
  sys.check_constraints chk
    JOIN sys.tables tab
      ON (chk.parent_object_id = tab.object_id)
    JOIN sys.columns col
      ON (chk.parent_object_id = col.object_id
          AND chk.parent_column_id = col.column_id)
where object_name(chk.parent_object_id)='s'

--********** End **********--
Go



第4关 删除数据表中的完整性约束

--********** 创建数据库**********--
--********** Begin **********--
    DROP database teach
   create database teach

--********** End **********--
go

use teach
--********** 创建数据表 **********--
--********** Begin **********--
CREATE TABLE s
(
   sno varchar(10) CONSTRAINT sno_pk PRIMARY KEY, 
   sname varchar(10) ,
   age int ,
   dept varchar(10)
)

    
    

--********** End **********--
go

use teach
--********** 删除完整性约束 **********--
--********** Begin **********--
ALTER TABLE s
DROP CONSTRAINT sno_pk

    
    

--********** End **********--
go

--********** 评测数据 **********--
--********** Begin **********--

use teach

exec sp_columns  s

--主键约束--
select b.column_name 主键名
from information_schema.table_constraints a
inner join information_schema.constraint_column_usage b
on a.constraint_name = b.constraint_name
where a.constraint_type = 'PRIMARY KEY' and a.table_name = 's'
go


第5关 删除数据表

--********** 创建数据库**********--
--********** Begin **********--
DROP database teach
 create database teach


--********** End **********--
go

use teach
--********** 创建数据表 **********--
--********** Begin **********--
create table s
(
    sno char(6) primary key,
    sname varchar(8),
    age int,
    dept varchar(20) 
)

create table sc
(
    sno char(6) foreign key references s(sno),
    cno varchar(10),
    grade int,
    primary key(sno,cno)
)

--********** End **********--

--********** 删除数据表 **********--
--********** Begin **********--
DROP TABLE sc
DROP TABLE s



--********** End **********--
go

--********** 评测数据 **********--
--********** Begin **********--

use teach

--显示数据库中的所有表名--
SELECT * FROM INFORMATION_SCHEMA.TABLES

--********** End **********--
go

SQL Server 实验2.1 单表查询

第1关 查询单表中若干列


create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name varchar(20) unique,
  sex char(2) default 'm',
  age int check(age between 19 and 23),
  dept varchar(20) not null
)

insert into s
values('001','tom','m',20,'cs'),('002','jerry','m',19,'cs'),('003','amy','f',22,'is')
go

use teach
--********** 查询指定列 **********--
--********** Begin **********--
select name,dept
from s


--********** End **********--

--********** 查询所有列 **********--
--********** Begin **********
select *
from s


--********** End **********--

--********** 目标列名改为显示列名 **********--
--********** Begin **********
select name as 姓名
from s


--********** End **********--

--********** 取消重复行 **********--
--********** Begin **********
select distinct dept
from s


--********** End **********--
go

第2关 查询单表中若干行

drop database teach
create database teach
go

use teach
create table c
(
	cno char(10) primary key,
	cname varchar(50) not null,
	credit float default 2.0
)

insert into c
values('c01','database system',3.5),('c02','software system design',4),('c03','math',3)
go

use teach
--********** 1、比较大小 **********--
--********** Begin **********--
select cname 
from c
where credit >3




--********** End **********--

--********** 2、确定范围 **********--
--********** Begin **********--
select cno,credit
from c
where credit not between 2.0 and 3.0




--********** End **********--

--********** 3、确定集合 **********--
--********** Begin **********--
select *
from c
where cno in ('c01','c02')




--********** End **********--

--********** 4、字符匹配 **********--
--********** Begin **********--
select cname
from c
where cname like '%system%'


--********** End **********--
go

第3关 聚集函数

drop database teach
create database teach
go

use teach
create table sc
(
	sno char(10),
	cno char(10),
	grade int check(grade between 0 and 100),
	primary key(sno,cno)
)

insert into sc
values('001','c01',90),('001','c02',87),('002','c01',85),('002','c02',92),('003','c01',89)
go

use teach
--********** 1、最大值和最小值**********--
--********** Begin **********--
select max(grade) ,min(grade) 
from sc


--********** End **********--

--********** 2、总和**********--
select sum(grade) as 总分
from sc
where sno = '001'


--********** End **********--

--********** 3、统计元组个数**********--
select count(distinct sno) as 人数
from sc



--********** End **********--
go

第4关 分组和排序

drop database teach
create database teach
go

use teach
create table sc
(
	sno char(10),
	cno char(10),
	grade int check(grade between 0 and 100),
	primary key(sno,cno)
)

insert into sc
values('001','c01',90),('001','c02',87),('002','c01',85),('002','c02',80),('003','c01',89)
go

use teach
--********** 1、无分组结果筛选**********--
--********** Begin **********--
select cno,avg(grade) as 平均分
from sc
group by cno


--********** End **********--

--********** 2、有分组结果筛选+排序**********--
select cno,avg(grade) as 平均分
from sc
group by cno
having avg(grade) > 85
order by avg(grade) ASC



--********** End **********--
go

SQL Server 实验2.2 连接查询

第1关 等值连接

drop database teach
create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name varchar(20) unique,
  sex char(2) default 'm',
  age int check(age between 19 and 23),
  dept varchar(20) not null
)

create table sc
(
	sno char(10) foreign key references s(sno),
	cno char(10),
	grade int check(grade between 0 and 100),
	primary key(sno,cno)
)

insert into s
values('001','tom','m',20,'cs'),('002','jerry','m',19,'cs'),('003','amy','f',22,'is')

insert into sc
values('001','c01',90),('001','c02',87),('002','c01',85),('002','c02',92)
go

use teach
--********** 1、where 等值连接查询所有值**********--
--********** Begin **********--
select s.*,cno,grade
from s,sc
where s.sno=sc.sno


--********** End **********--

--********** 2、left join 等值连接查询所有值**********--

select s.*,cno,grade
from s left join sc
on s.sno=sc.sno



--********** End **********--

--********** 3、 加复合条件的 where 等值连接查询指定值**********--


select name,cno,grade
from s,sc
where s.sno=sc.sno and dept = 'cs'


--********** End **********--
go

第2关 多表连接

drop database teach
create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name varchar(20) unique,
  sex char(2) default 'm',
  age int check(age between 19 and 23),
  dept varchar(20) not null
)

create table c
(
	cno char(10) primary key,
	cname varchar(50) not null,
	credit float default 2.0
)

create table sc
(
	sno char(10) foreign key references s(sno),
	cno char(10) foreign key references c(cno),
	grade int check(grade between 0 and 100),
	primary key(sno,cno)
)

insert into s
values('001','tom','m',20,'cs'),('002','jerry','m',19,'cs')

insert into c
values('c01','database system',3.5),('c02','software system design',4)

insert into sc
values('001','c01',90),('001','c02',87),('002','c01',85),('002','c02',92)
go

use teach
--********** 1、 where 多表连接查询指定值**********--
--********** Begin **********--
SELECT s.sno, name,cname, credit, grade
FROM s, c,sc
WHERE s.sno = sc.sno
AND sc.cno = c.cno



--********** End **********--

--********** 2、加复合条件的 where 多表连接查询指定值**********--

SELECT  name,cname, grade
FROM s, c,sc
WHERE (s.sno = sc.sno
AND sc.cno = c.cno)
and s.sno = '001'


--********** End **********--
go

第3关 自身连接

drop database teach
create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name varchar(20) unique,
  sex char(2) default 'm',
  age int check(age between 19 and 23),
  dept varchar(20) not null
)

insert into s
values('001','tom','m',20,'cs'),('002','jerry','m',19,'cs'),('003','amy','f',22,'is')
go

use teach
--********** 自身连接查询指定列**********--
--********** Begin **********--

SELECT X.name, X.age
FROM s AS X ,s AS Y
WHERE X.age> Y.age AND  Y.name='jerry'



--********** End **********--
go

SQL Server 实验2.3 子查询

第1关 返回单值的子查询


create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name varchar(20) unique,
  sex char(2) default 'm',
  age int check(age between 19 and 23),
  dept varchar(20) not null
)

create table sc
(
	sno char(10) foreign key references s(sno),
	cno char(10),
	grade int check(grade between 0 and 100),
	primary key(sno,cno)
)

insert into s
values('001','tom','m',20,'cs'),('002','jerry','m',19,'cs'),('003','amy','f',22,'is')

insert into sc
values('001','c01',90),('001','c02',87),('002','c01',85),('002','c02',92)
go

use teach
--********** 1、返回单值的子查询(等值) **********--
select cno,grade
from sc
where sno =
(
--********** 补充子查询的内容*********--
--********** Begin **********--
select sno
from s
where name="tom"


--********** End **********--
)

--********** 2、返回单值的子查询(不等值) **********--
--********** 补充父查询的内容*********--
--********** Begin **********--
select sno,name,age
from s
where age >



--********** End **********--
(
    select age
    from s
    where name = 'jerry'
)
go

第2关 返回一组值的子查询

drop database teach
create database teach
go

use teach
create table c
(
	cno char(10) primary key,
	cname varchar(50) not null,
	credit float default 2.0
)

create table sc
(
	sno char(10) ,
	cno char(10) foreign key references c(cno),
	grade int check(grade between 0 and 100),
	primary key(sno,cno)
)

insert into c
values('c01','database system',3.5),('c02','software system design',4)

insert into sc
values('001','c01',90),('001','c02',87),('002','c01',88),('002','c02',92)
go

use teach
--********** 1、 使用 in 的子查询**********--
--********** 补充父查询的内容**********--
--********** Begin **********--
select cname,credit
from c
where cno in


--********** End **********--
(
    select cno
    from sc
    where sno = '001'
)


--********** 2、带 all 谓词的子查询**********--


select cno,grade
from sc
where cno != 'c01' and grade < all
(
--********** 补充子查询的内容**********--
--********** Begin **********--
select grade 
from sc 
where cno ='c01'



--********** End **********--
)

go

SQL Server 实验3 数据操纵与视图、索引

第1关 数据操纵

create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name varchar(20) unique,
  sex char(2) default 'm',
  age int check(age between 19 and 23),
  dept varchar(20) not null
)

create table sc
(
	sno char(10) foreign key references s(sno),
	cno char(10),
	grade int check(grade between 0 and 100),
	primary key(sno,cno)
)

insert into s
values('001','tom','m',20,'cs'),('002','jerry','m',19,'cs'),('003','amy','f',22,'is')

insert into sc
values('001','c01',90),('001','c02',87),('002','c01',85),('002','c02',92)
go

use teach
--********** 1、插入子查询的结果 **********--
create table sc_avg
 ( 
   sno char(10),     
   avg_grade int    /*平均分*/
)
--********** 补充 insert into 内容*********--
--********** Begin **********--
insert
into sc_avg(sno,avg_grade)
select sno,avg(grade)
from sc
group by sno




--********** End **********--
select * from sc_avg --评测子查询的插入结果

--********** 2、修改指定元组的值 **********--
--********** Begin **********--
update sc
set grade=grade+5
where grade>=90




--********** End **********--
select * from sc --评测更新后的结果

--********** 3、删除所有元组的值 **********--
--********** Begin **********--
delete
from sc



--********** End **********--
select * from sc --评测删除后的结果
go

第2关 创建和使用视图

drop database teach
create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name varchar(20) unique,
  sex char(2) default 'm',
  age int check(age between 19 and 23),
  dept varchar(20) not null
)

insert into s
values('001','tom','m',20,'cs'),('002','jerry','m',19,'cs'),('003','amy','f',22,'is')

go

--********** 1、创建视图 **********--
--********** Begin **********--
create view cs_m_s
as 
select sno,name,age
from s
where dept='cs' and sex='m'




--********** End **********--
go
select * from cs_m_s --评测创建视图后的结果
go
--********** 2、查询视图 **********--
--********** Begin **********--
select *
from cs_m_s
where age>=20




--********** End **********--
go

--********** 3、删除视图 **********--
--********** Begin **********--
delete
from cs_m_s



--********** End **********--
go
select * from cs_m_s --评测删除后的结果
go

第3关 创建和删除索引

drop database teach
create database teach
go

use teach
create table sc
(
	sno char(10),
	cno char(10),
	grade int check(grade between 0 and 100)
)

go


--********** 1、创建索引 **********--
--********** Begin **********--
create index sno_cno_index 
on sc
(
    sno asc,
    cno asc
)



--********** End **********--
go
exec sp_helpindex sc
go
--********** 2、删除索引 **********--
--********** Begin **********--
drop index sno_cno_index on sc


--********** End **********--
go
exec sp_helpindex sc
go

SQL Server 实验4 存储过程和触发器

第1关 创建和使用存储过程

drop database teach
create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name char(20) unique,
  age int check(age between 19 and 23),
)

insert into s
values('001','tom',20),('002','jerry',19),('003','amy',22)

use teach
go
--********** 1、 创建不带参数的存储过程 insertrecord **********--
--********** Begin **********--
CREATE PROCEDURE insertrecord
(
    @sno char(10),
    @name char(20),
    @age int
)
AS
INSERT INTO s
VALUES(@sno,@name,@age)







--********** End **********--
go
--********** 3、 执行存储过程 insertrecord **********-
--********** Begin **********--
EXECUTE insertrecord
@sno='004',@name='tony',@age=19




--********** End **********--
go

use teach
select * from s

 

第2关 创建和使用 DML 触发器

drop database teach
create database teach
go

use teach
create table s
(
  sno char(10) primary key,
  name varchar(20) unique,
  sex char(2) default 'm',
  age int check(age between 19 and 23),
  dept varchar(20) not null
)

create table sc
(
	sno char(10),
	cno char(10),
	grade int check(grade between 0 and 100),
	primary key(sno,cno)
)

insert into s
values('001','tom','m',20,'cs'),('002','jerry','m',19,'cs'),('003','amy','f',22,'is')

insert into sc
values('001','c01',90),('001','c02',87),('002','c01',85),('002','c02',92)
go

--********** 1、创建触发器********--
--********** Begin **********--
create trigger delete_s on s
after delete
as
    delete from sc 
    where sno in (select sno from deleted)




--********** End **********--
go
use teach
--********** 2、使用触发器*********--
delete from s where sno ='002'




--********** End **********--
go 

select * from s
select * from sc

有关头歌 数据库系统实验 答案 善用目录的更多相关文章

  1. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  2. ruby-on-rails - active_admin 目录中的常量警告重新声明 - 2

    我正在使用active_admin,我在Rails3应用程序的应用程序中有一个目录管理,其中包含模型和页面的声明。时不时地我也有一个类,当那个类有一个常量时,就像这样:classFooBAR="bar"end然后,我在每个必须在我的Rails应用程序中重新加载一些代码的请求中收到此警告:/Users/pupeno/helloworld/app/admin/billing.rb:12:warning:alreadyinitializedconstantBAR知道发生了什么以及如何避免这些警告吗? 最佳答案 在纯Ruby中:classA

  3. ruby - Ruby 有 `Pair` 数据类型吗? - 2

    有时我需要处理键/值数据。我不喜欢使用数组,因为它们在大小上没有限制(很容易不小心添加超过2个项目,而且您最终需要稍后验证大小)。此外,0和1的索引变成了魔数(MagicNumber),并且在传达含义方面做得很差(“当我说0时,我的意思是head...”)。散列也不合适,因为可能会不小心添加额外的条目。我写了下面的类来解决这个问题:classPairattr_accessor:head,:taildefinitialize(h,t)@head,@tail=h,tendend它工作得很好并且解决了问题,但我很想知道:Ruby标准库是否已经带有这样一个类? 最佳

  4. ruby-on-rails - 如何在 Gem 中获取 Rails 应用程序的根目录 - 2

    是否可以在应用程序中包含的gem代码中知道应用程序的Rails文件系统根目录?这是gem来源的示例:moduleMyGemdefself.included(base)putsRails.root#returnnilendendActionController::Base.send:include,MyGem谢谢,抱歉我的英语不好 最佳答案 我发现解决类似问题的解决方案是使用railtie初始化程序包含我的模块。所以,在你的/lib/mygem/railtie.rbmoduleMyGemclassRailtie使用此代码,您的模块将在

  5. ruby - 我如何添加二进制数据来遏制 POST - 2

    我正在尝试使用Curbgem执行以下POST以解析云curl-XPOST\-H"X-Parse-Application-Id:PARSE_APP_ID"\-H"X-Parse-REST-API-Key:PARSE_API_KEY"\-H"Content-Type:image/jpeg"\--data-binary'@myPicture.jpg'\https://api.parse.com/1/files/pic.jpg用这个:curl=Curl::Easy.new("https://api.parse.com/1/files/lion.jpg")curl.multipart_form_

  6. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

  7. 电脑0x0000001A蓝屏错误怎么U盘重装系统教学 - 2

      电脑0x0000001A蓝屏错误怎么U盘重装系统教学分享。有用户电脑开机之后遇到了系统蓝屏的情况。系统蓝屏问题很多时候都是系统bug,只有通过重装系统来进行解决。那么蓝屏问题如何通过U盘重装新系统来解决呢?来看看以下的详细操作方法教学吧。  准备工作:  1、U盘一个(尽量使用8G以上的U盘)。  2、一台正常联网可使用的电脑。  3、ghost或ISO系统镜像文件(Win10系统下载_Win10专业版_windows10正式版下载-系统之家)。  4、在本页面下载U盘启动盘制作工具:系统之家U盘启动工具。  U盘启动盘制作步骤:  注意:制作期间,U盘会被格式化,因此U盘中的重要文件请注

  8. 【鸿蒙应用开发系列】- 获取系统设备信息以及版本API兼容调用方式 - 2

    在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList​()Obt

  9. FOHEART H1数据手套驱动Optitrack光学动捕双手运动(Unity3D) - 2

    本教程将在Unity3D中混合Optitrack与数据手套的数据流,在人体运动的基础上,添加双手手指部分的运动。双手手背的角度仍由Optitrack提供,数据手套提供双手手指的角度。 01  客户端软件分别安装MotiveBody与MotionVenus并校准人体与数据手套。MotiveBodyMotionVenus数据手套使用、校准流程参照:https://gitee.com/foheart_1/foheart-h1-data-summary.git02  数据转发打开MotiveBody软件的Streaming,开始向Unity3D广播数据;MotionVenus中设置->选项选择Unit

  10. 使用canal同步MySQL数据到ES - 2

    文章目录一、概述简介原理模块二、配置Mysql使用版本环境要求1.操作系统2.mysql要求三、配置canal-server离线下载在线下载上传解压修改配置单机配置集群配置分库分表配置1.修改全局配置2.实例配置垂直分库水平分库3.修改group-instance.xml4.启动监听四、配置canal-adapter1修改启动配置2配置映射文件3启动ES数据同步查询所有订阅同步数据同步开关启动4.验证五、配置canal-admin一、概述简介canal是Alibaba旗下的一款开源项目,Java开发。基于数据库增量日志解析,提供增量数据订阅&消费。Git地址:https://github.co

随机推荐