数据库基本概念与SQL语句 数据库(概念、语法、DBMS、SQL语言:创建数据库、表格,添加、修改、删除数据记录)
数据库(概念、语法、DBMS、SQL语言:创建数据库、表格,添加、修改、删除数据记录) 关系型数据库:以表作为实体,以主键和外键关系作为联系的一种数据结构。 主键:在关系型数据库中,用一个唯一的标识符来标志每一行,这个标识符就是主键。主键有两个特点:非空和不能重复。 外键:在关系型数据库中,外键就是用来表达表与表之间的关系、联系,通过主外键关系,建立实体之间的联系。 表之间的三种基本关系模型: ① 一对多关系: 一条主表记录对应多条从表记录,一条从表记录对应一条主表记录。 ② 一对一关系: 一
STM32的I2C特性及架构
软件模拟协议:使用CPU直接控制通讯引脚(GPIO)的电平,产生出符合通讯协议标准的逻辑。 硬件实现协议:由STM32的I2C片上外设专门负责实现I2C通讯协议,只要配置好该外设,它就会自动根据协议要求产生通讯信号,收发数据并缓存起来,CPU只要检测该外设的状态和访问数据寄存器,就能完成数据收发。这种由硬件外设处理I2C协议的方式减轻了CPU的工作,且使软件设计更加简单。 STM32的I2C外设可用作通讯的主机及从机,支持100Kbit/s和400Kbit/s的速率,支持7位、10位设备地址,
Django中的URL
urls.py负责把URL模式映射到应用程序,URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表;你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码
关于 Table 表格那些三两事儿
引言 实现下列表格样式,嵌套与form表单中提交信息,为了让自己的表格可以“ 随心所欲 ” 变换自己的形式,需要两个重要的td 属性colspan 列合并 以及 rowspan 行合并 来实现,表格宽度是根据最大文字长度自动更改的 表格最终呈现 HTML code <!DOCTYPE html>
<!-- 如果需要将整个表格信息发送邮件,请将样式写于被控制元素行内控制 -->
<html lang="en">
<head>
<meta charset="UTF-8">
<tit
数据结构-排序算法、选择排序、堆排序
堆是具有以下性质的完全二叉树:每个结点的值都大于或等于左右孩子结点的值,称之为大顶堆,或者每个结点的值都小于或等于左右孩子结点的值,称之为小顶堆。堆排序由以下步骤构成: 1.将无序序列构建成一个堆,根据升序降序需求选择大顶堆或小顶堆。 2.将堆顶元素与末尾元素进行交换-将最大元素“沉”到数组末端 3.重新调整结构,使其满足堆的定义,然后继续交换堆顶与当前末尾元素。直到整个序列有序。 //堆排序
/*************************************************
004 如何定义和澄清问题
1. 最近客户退单率特别高,怎么办? 期望:退单率很低 实际:这两天退单率很高 2. 在这家公司工作3年了,工资只有6000, 我该怎么办? 期望:工资为10000 实际:工资只有6000 3. 大四了,我应该选择考研还是工作? 为了长远收益,我想把未来2年用来读研 为了近两年的收入,我想把未来2年用来工作 易得性启发式 → 5 Why
HDU4301 Divide Chocolate
给你t组数据 2*a块巧克力 分成k块有几种分法 这道题看题解的话的代码不难理解,就是让每个状态都是由上一个状态转移得到,运用的是dp思想,多做题,才能看到这种题目反应过来怎么做。 f[i][j][0/1] i表示第几行 j表示分成几分0/1表示第i行是否相连 #include<bits/stdc++.h>
using namespace std;
const int mo=100000007;
int f[1100][2200][4]= {0};
int main()
{
f[1][2][0
Exp6:信息收集与漏洞扫描
---恢复内容开始--- 一、实验目标和内容 本实践的目标是掌握信息搜集的最基础技能。 各种搜索技巧的应用 DNS、IP注册信息的查询 基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点 漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞 二、实验过程 1.信息收集 1.1通过DNS和IP挖掘目标网站的信息 whios用来进行域名注册信息查询,可查询到注册人的姓名、组织和城市等信息,我用的博客园网站。cnblogs.com dig用来查询官方DNS服务器上精确的结果 nsl
concurrent
#--coding:utf-8-- import os,sys def excutecmd(cmd): print('cmd:::{}'.format(cmd)) try: print('1command is {} and pid is {}'.format(cmd, os.getpid())) ret = os.system(cmd) print('2command is {} and pid is {}'.format(cm
while和do-while循环结构
while(循环条件){ 循环操作 i++; } 1.声明并初始化循环变量。 2.判断循环条件是否满足,如果满足则执行循环操作;否则退出循环。 3.执行完循环操作后,再次判断循环条件,决定继续执行循环或退出循环。 *while循环的特点:先判断,后执行。 do{ 循环操作 i++; }while(循环条件); 1.声明并初始化循环变量。 2.执行一遍循环操作。 3.判断循环条件,如果循环条件满足,则循环继续执行,否则退出循环。 *do-while循环的特点:先执行,再判断。 本章总结 1.循环
康托展开和逆康托展开
康托展开是一个全排列到一个自然数的双射,常用于构建hash表时的空间压缩。设有n个数(1,2,3,4,…,n),可以有组成不同(n!种)的排列组合,康托展开表示的就是是当前排列组合在n个不同元素的全排列中的名次。 逆康托展开给一个数字求出第几个排列组合。 给出n和操作数k,要求资瓷: P x求n的第x个排列 Q 一个n的排列 求这是第几个排列 n<=20 #include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring
HTTP中不同的Content-type引发的问题。
前言: 之所以来研究一下这个东西,是因为我不止一次遇到一个问题:前端传了参数(浏览器里面可以看见是传了的),但是后端没有接收到。一开始我用axios和写go的后端遇到过,后来我用vue-resource和写java的后端又遇到了。奇怪的是我用原生的ajax来请求又没了问题。后来在使用postman来测试的时候,发现好像他们的Content-type有一些区别,大概知道了原因,但是因为懒也没有去深究,但是最近我同事又遇到了,又让我勤快了一些,简单用node来测试一下。 -------------
Django的简单的命令与并实现第一个页面
一、 创建python虚拟环境,安装django 二、创建一个django项目 命令:django-admin startproject 项目名称 eg: G:\django_learn>workon testvir
(testvir) G:\django_learn>django-admin startproject django_learn 执行完成将成功创建一个django项目django_learn并生成目录 --- django_learn
---settings.
Java核心技术-异常、断言和日志
程序发生错误时至少做到以下几点: *向用户通告错误 *保存所有的工作结果 *允许用户以妥善的形式退出程序 Java使用一种称为异常处理的错误捕获机制处理异常。 本章第一部分介绍Java的异常,第二部分介绍如何使用断言来有选择地启用检测,第三部分将讨论标准的Java日志框架。 1.1 处理错误 假设在一个Java程序运行期间出现了一个错误(文件包含错误信息、网络连接出现问题、无效的数组下标、试图使用一个没有被赋值的对象引用),程序应该: *返回到一种安全的状态,并能够让用户执行一些其他命令 *允
今日推荐
周排行