无聊到周六的教研室

  hi!

无聊啊,无聊啊。。。。

虽然前两天懈怠了,用日本人中二的方式说一句,今天我会好好努力的!!

--------------------11:58-------------------

1、MySQL

---数据类型之字符型

--CHAR(M)   VARCHAR(M)  TINYTEXT   TEXT    MEDIUMTEXT   LONGTEXT   ENUM()        SET()

    定长            变长                                                                                    枚举(选择) 集合(任意的排列组合)

---创建数据表

--行称为记录,列称为字段

--数据表组成数据库,所以先处理数据库。

USE TEST;

--创建表格:CREATE TABLE[IF NOT EXISTS] table_name(

                 column_name data_type,   //分隔符为逗号,列数一定要准备好,数据类型已讲,最后一个字段不加逗号

                 ... 

               )   

--注意数据类型的选择,比如不能出现负值,就UNSIGNED

mysql> CREATE TABLE tb1(
-> username VARCHAR(20),
-> age TINYINT UNSIGNED,
-> salary FLOAT(8,2) UNSIGNED);

---查看数据表

--SHOW TABLES;

--SHOW TABLES FROM mysql;查看所有表,注意这里数据库并不会改变

---查看数据表结构

--SHOW COLUMNS FROM table_name;

---记录(行)的插入与查找

--INSERT [INTO] tbl_name [(col_name,...)] VALUES(val,...);//如果省略掉列名,则对所有的列进行赋值,也就是说,所有的value都要有,比如有4列,赋值3个值就不行

--查看记录,SELECT的简化使用:SELECT expr,... FROM tbl_name;

---空值与非空  NULL&NOT NULL

--判断输入是否为空:对字段的设定

--比如年龄这个字段必须输入,非空,在创建字段时应该如此:age TINYINT UNSIGNED NOT NULL

---自动编号AUTO_INCREMENT&主键约束

--避免记录不重复

--起始值为1,步长为1

--自动编号的字段必须是主键

--每张数据表必须只有一个主键,主键自动是NOT NULL,主键不允许存在相同的值

mysql> CREATE TABLE tb3(
-> id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,//这里自动编号和主键在一起~
-> sername VARCHAR(30) NOT NULL);

+---------+----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+----------------------+------+-----+---------+----------------+
| id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| sername | varchar(30) | NO | | NULL | |
+---------+----------------------+------+-----+---------+----------------+

SHOW COLUMNS FROM tb3;

SELECT * FROM tb3;

---初涉唯一约束UNIQUE KEY

--保证唯一性

--可以为空值,也可以有许多空值NULL,不算做重复

--与主键不同,可以在一个表中有多个唯一约束

--username VARCHAR(20) UNIQUE KEY,

---初涉默认约束DEFAULT

--系统默认

--常出现于ENUM类型中

mysql> CREATE TABLE tb4(
-> id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-> name VARCHAR(20) NOT NULL UNIQUE KEY,
-> gender ENUM('1','2','3') DEFAULT '3');

+--------+----------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+----------------------+------+-----+---------+----------------+
| id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(20) | NO | UNI | NULL | |
| gender | enum('1','2','3') | YES | | 3 | |
+--------+----------------------+------+-----+---------+----------------+

2、Javascript入门完结篇

---window对象问题

--即浏览器窗口,不要误解为windows系统的对象

--window.open,window.alert

--计时器Interval——执行多次,或clearInterval

-setInterval(fucntion,time);

-clearInterval(setInterval_var_name);用于停止延时操作

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>计时器</title>
<script type="text/javascript">
function clock(){
var time=new Date();
document.getElementById("clock").value = time;
}
var i=setInterval(clock,100);
</script>
</head>
<body>
<form>
<input type="text" id="clock" size="50" />
<input type="button" value="Stop" onclick="clearInterval(i)"/>
</form>
</body>
</html>

--计时器Timeout

-setTimeout(function_name,time);

-clearTimeout()

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>计时器</title>
</head>
<script type="text/javascript">
var num=0;
var i;
function startCount(){
document.getElementById('count').value=num;
num=num+1;
i=setTimeout("startCount()",1000);
}
function stopCount(){
clearTimeout(i);
}
</script>
</head>
<body>
<form>
<input type="text" id="count" />
<input type="button" value="Start" onclick="startCount()"/>
<input type="button" value="Stop" onclick="stopCount()"/>
</form>
</body>
</html>

--window.history_URL 记录器

-window.history.[属性|方法]

-属性有.length——包含URL条数

-方法有.back().forward().go()

-.back()=.go(-1)

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
</head>
<script type="text/javascript">
function GoBack() {
window.history.go(-1);
}

function GoForward() {
window.history.forward();
}
</script>
</head>
<body>
点击下面的锚点链接,添加历史列表项:
<br />
<a href="#target1">第一个锚点</a>
<a name="target1"></a>
<br />
<a href="#target2">第二个锚点</a>
<a name="target2"></a>
<br /><br />
使用下面按钮,实现返回前或下一个页面:
<form>
<input type="button" value="返回前一个页面" onclick="GoBack();" />
<input type="button" value="返回下一个页面" onclick="GoForward();" />
</form>
</body>
</html>

--location对象_用于获取或设置窗体的URL,并且可以用于解析URL

-location.[]

-属性比较多:host,hostname,hash,href,protocal,port,pathname(4h3p)

-方法:assign(),reload(),replace()

document.write(window.location.href);

--Navigator 对象包含有关浏览器的信息,通常用于检测浏览器与操作系统的版本。

-基本都是属性:appName,appVersion,appCodeName,platform,userAgent

document.write(window.navigator.appName);

--screen对象用于获取用户的屏幕信息。

-属性多是一些height,width

document.write( "屏幕宽度:"+window.screen.width+"<br>");
document.write( "屏幕高度:"+window.screen.height);

---DOM文档对象模型

--文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法。DOM 将HTML文档呈现为带有元素、属性和文本的树结构(节点树)。

--也就是说,对文档结构直接进行操作

--用法等见下文代码及注释

----------------------------------------

<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
function getnum(){
var mynode=document.getElementsByName("myt") ; //document.getElementsByName()返回带有指定名称的节点对象的集合
alert(mynode.length);
}
</script>
</head>
<body>
<input name="myt" type="text" value="1">
<input name="myt" type="text" value="2">
<input name="myt" type="text" value="3">
<input name="myt" type="text" value="4">
<input name="myt" type="text" value="5">
<input name="myt" type="text" value="6">

<br />
<input type="button" onclick="getnum()" value="看看有几项?" onclick="getnum()"/>
</body>
</html>

---------------------------------------------------------------

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>JavaScript</title>
</head>
<body>

<form name="Input">
<table align="center" width="500px" height="50%" border="1">
<tr>
<td align="center" width="100px">
学号:
</td>
<td align="center" width="300px">
<input type="text" id=userid name="user" onblur="validate();">
<div id=usermsg></div>
</td>
</tr>
<tr>
<td align="center" width="100px">
姓名:
</td>
<td align="center">
<input type="text" name="name">
</td>
</tr>
<tr>
<td align="center" width="%45">
性别:
</td>
<td align="center">
<input type="radio" name="sex" value="男">

<input type="radio" name="sex" value="女">

</td>
</tr>
<tr>
<td align="center" width="30%">
年龄:
</td>
<td align="center" width="300px">
<input type="text" name="age">
</td>
</tr>
<tr>
<td align="center" width="100px">
地址:
</td>
<td align="center" width="300px">
<input type="text" name="addr">
</td>
</tr>

</table>
</form>
<h1 id="myHead" onclick="getValue()">
看看三种获取节点的方法?
</h1>
<p>
点击标题弹出它的值。
</p>
<input type="button" onclick="getElements()"
value="看看name为sex的节点有几个?" />
<Br>
<input type="button" onclick="getTagElements()"
value="看看标签名为input的节点有几个?" />

<script type="text/javascript">
function getValue()
{
var myH=document.getElementById("myHead");   //document.getElementById(),document.getElementsByName(),document.getElementsByTagName()

//1. ID 是一个人的身份证号码,是唯一的。所以通过getElementById获取的是指定的一个人。

//2. Name 是他的名字,可以重复。所以通过getElementsByName获取名字相同的人集合。

//3. TagName可看似某类,getElementsByTagName获取相同类的人集合。如获取小孩这类人,getElementsByTagName("小孩")。


alert(myH.innerHTML)
}
function getElements()
{
var mys=document.getElementsByName("sex");
alert(myS.length);
}

function getTagElements()
{
var myI=document.getElementsByTagName('input');
alert(myI.length);
}

</script>

</body>
</html>

3、PHP-面向对象实践

---基本实践

--物以类聚,类,你懂的——相同的属性和方法

--具体化描述类,就是对象。类的对象称为类的一个实例

--类的属性和方法都是类的成员

原文地址:https://www.cnblogs.com/andy1202go/p/4906550.html