- mysql中文乱码如何处理
重生之机械生做程序猿
mysqlmysql数据库
如何修改编码:mysql修改已在库的编码windows安装如果是windows的安装包,那么找到my.ini文件,进行更改docker部署的mysqldocker部署的mysql容器,找到my.cnf文件(此处为阿里云ECS服务器部署的docker)将mysql的my.cnf文件复制到服务器中(在保存该文件的路径下进行操作)dockercpmysql:/etc/mysql/my.cnfmy.cnf
- Mysql中文乱码问题。 安装MySql没有my.ini文件时的配置
要做一棵树
数据库
客户端cmd打开mysql,执行插入中文报错或插入中文乱码解决方案最近在制作一个安装包,需要安装的时候执行mysql脚本儿,做了一个批处理,但是发现总是执行到插入中文的时候报错,或者插入中文是乱码。网上查了好多资料,说是把编码改成GBK什么的,终究还是不成功。最后经过多次测试,现把解决方案分享给大家。第一步:打开mysql中的配置文件,my.ini,看一看配置文件中[mysql]default-c
- 解决Docker容器中Mysql中文乱码问题
一个欧维
Linuxlinux
进入容器,修改/etc/mysql/my.cnf添加如下配置[client]port=3306socket=/var/lib/mysql/mysql.sockdefault-character-set=utf8[mysqld]port=3306socket=/var/lib/mysql/mysql.sockcharacter-set-server=utf8[mysql]no-auto-rehash
- sqoop工具将数据从Hive导出到mysql中文乱码问题
似懂非dong
数据同步工具hivesqoopmysql
sqoop工具将数据从Hive导出到mysql中文乱码问题常用从hive导出数据到mysql的sqoop执行语句:bin/sqoopexport\--connectjdbc:mysql://bigdata01:3306/etl\--usernameroot\--password123456\--tablegrade\--num-mappers1\--export-dir/user/hive/war
- 彻底解决mysql中文乱码的办法
最不喜欢起名字
mysqlmysql乱码
原文链接:http://www.pc6.com/infoview/Article_63586.htmlMySQL会出现中文乱码的原因不外乎下列几点:1.server本身设定问题,例如还停留在latin12.table的语系设定问题(包含character与collation)3.客户端程式(例如php)的连线语系设定问题强烈建议使用utf8!!!!utf8可以兼容世界上所有字符!!!!Linux下
- python2.7 查询mysql中文乱码问题
问题:python2.7查询或者插入中文数据在mysql中的时候出现中文乱码---可能情况:1.mysql数据库各项没有设置编码,默认为'latin'2.使用MySQL.connect的时候没有设置默认编码3.没有设置python的编码,python2.7默认为'ascii'4.没有解码---解决方法:1.设置mysql的编码ubuntu执行下列语句:**sudovim/etc/mysql/my.
- Mysql解决中文乱码
GC-扫地僧
MySqlmysqldatabaseoracle
mysql字符编码的设置以及mysql中文乱码的解决方法(治本)2.1解决策略一:最近在开发过程中,使用到mysql的数据库,而在将中文数据插入到数据库的时候出现了数据乱码的问题,在网上找了很多方法,问了很多人,试了很久才发现网上有的方法是不行的,因此在此记录下,以便他人查找。查看字符编码首先,将中文插入到数据库乱码是因为没有将数据库编码设置为支持中文的编码,mysql的默认编码是Latin1,不
- windows安装mysql client 命令行客户端
ITKEY_
windows运维windowsmysql数据库
我在macOS和linux中,有一些操作比较喜欢直接使用mysql命令行程序完成。切到windows中反而不知道如何安装mysqlclient了。相关阅读《macOS安装mysqlclient命令行工具》https://blog.csdn.net/lxyoucan/article/details/123864650《命令行mysql中文乱码解决》https://blog.csdn.net/lxyo
- linux 版本mysql 数据乱码_linux mysql 数据库乱码
Jimmy Song
linux版本mysql数据乱码
mysql中文乱码mysql是我们项目中非常常用的数据型数据库。但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况。下面就来介绍一下如何彻底解决数据库中文乱码情况。1、中文乱码1.1、中文乱码createtableuser(namevarchar(11));#创建user表...文章hank_leo2018-09-241958浏览量linux下mysql下保存进去数据为乱码的解决办法
- linux mysql插入数据乱码_linux mysql数据库中文乱码
欢12
linuxmysql插入数据乱码
mysql中文乱码mysql是我们项目中非常常用的数据型数据库。但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况。下面就来介绍一下如何彻底解决数据库中文乱码情况。1、中文乱码1.1、中文乱码createtableuser(namevarchar(11));#创建user表...文章hank_leo2018-09-241962浏览量彻底解决mysql中文乱码我把数据库本分到本地之后重
- 「经验」解决/弄懂Windows环境下CMD中MySQL中文乱码
icekylin
引子由于Windows操作系统的CMD控制台默认是GBK(我国于1995年12月1日制订)编码的,所以在操作MySQL数据库时显示中文可能会出现乱码,并且也不能输入中文。本经验立足实践,告诉大家解决这一问题的方法论。误区不少人认为既然CMD控制台是GBK编码的,那修改注册表改成UTF-8编码的不就完事了吗!好吧...虽然这个想法有一定的道理,但事实上依旧无法正常显示/输入中文。这个应该是微软的锅啦
- mysql中文乱码和1366问题
越过_1b61
因为mysql5.7没有配置文件可以将网上的配置文件在/etc/my.cnf下加入#ExampleMySQLconfigfileformediumsystems.##Thisisforasystemwithlittlememory(32M-64M)whereMySQLplays#animportantpart,orsystemsupto128MwhereMySQLisusedtogetherwit
- MYSQL中文乱码问题的解决方案
目录一、乱码的原因:二、查看数据库的编码方式三、解决的办法有俩种:四、本人在项目遇到乱码问题是以下方法解决的总结一、乱码的原因:1、client客户端的编码不是utf82、server端的编码不是utf83、database数据库的编码不是utf84、数据库的表的编码不是utf85、表中的列字段编码不是utf8主要的原因在于前三个偏多。二、查看数据库的编码方式mysql>showvariables
- QT(C++)连接MySQL中文乱码解决
monzaid
Qtmysql数据库qt
方法1、QSqlDatabase对象设置UTF-8编码QSqlDatabasedb;db.exec("SETNAMES'UTF-8'");方法2、将MySQL编码设置成UTF-8showvariableslike'character_set_%';各字段的含有如下:主要关注的是character_set_client、character_set_connection、character_set_r
- ubuntu下mysql中文乱码问题
HELLOTREE1
退出mysql猴修改vim的mysql的conf文件,不可以。一定要停用之后在修改,再次启动mysql,才能更新修改utf8.但是之前的数据库和表无法更改。1.重启mysql命令以便让你上面的修改生效停用命令:sudomysqladminshutdown-uroot-p启用命令:sudo/etc/init.d/mysqlrestart2在终端输入命令sudovim/etc/mysql/my.cnf
- 如何用python查询mysql乱码问题?
相信很多在工作中的Python小伙伴,经常会遇到一些工作上的问题,例如查询mysql中文乱码问题,Python连接mysql数据库时,读取数据库中的中文出现乱码,所有中文都显示为问号了,那么该如何解决这个问题呢?解决问题的步骤如下:一、为什么出现乱码,出现乱码的可能情况情况:1.mysql数据库各项没有设置编码,默认为'latin'2.使用MySQL.connect的时候没有设置默认编码3.没有设
- mysql中文乱码诊断及解决-这些年我踩过的坑
睡不醒的惊蛰
mysql中文乱码相信是每一名javaweb码农抓耳挠腮又痛心疾首的问题,有病乱投医,一通搜索,照着网上方法一个又一个的做,“怎么还是特么不行?!!”。实际上从表面现象看,网上的问题和你的问题都是中文出现了乱码,但病源出在哪,却各不相同。Ok,别慌张,沉下来心跟我一步步诊断病因,并彻底根除。声明:本文旨在帮助大家找出乱码的原因和解决办法,具体操作自行百度google。大原则:数据库、表和字段、页面
- MySql中文乱码的那些事
a乐乐_1234
当你在插入数据或建表后发现注释乱码,你应该通过以下方式进行排查。查看MySql编码格式showvariableslike'%char%';全是latin1,可不就乱码了,所以你应该通过以下方式进行修改setcharacter_set_client='utf8';setcharacter_set_connection='utf8';setcharacter_set_database='utf8';s
- windows下mysql中文乱码解决方案
Hughman
windows下mysql中文乱码解决方案查看乱码情况1.status命令status2.showvariableslike"%char%";命令showvariableslike"%char%";修改my.ini文件在mysql的安装目录下有一个my.ini文件,如果没有就去创建。my.ini添加以下内容[mysql]default-character-set=utf8[mysqld]chara
- mysql 乱码 utf-8_MYSQL数据库使用UTF-8中文编码乱码的解决办法
weixin_39732249
mysql乱码utf-8
PHP中文乱码解决办法[转]一.首先是PHP网页的编码1.php文件本身的编码与网页的编码应匹配a.如果欲使用gb2312编码,那么php要输出头:header(“Content-Type:text/html;charset=gb2312"),静态页面添加...文章余二五2017-11-17966浏览量读mysql中文乱码问题解决方法一般来说,乱码的出现有2种原因,首先是由于编码(charset)
- kettle作业—mysql中文乱码问题
mysql乱码kettle
(1)先关闭mysql服务,sudoservicemysqlstop(2)找到mysql的配置文件my.cnf(安装方式不同目录可能不同,我的在/usr/my.cnf),添加如下配置:character_set_server=utf8init_connect='SETNAMESutf8'(3)重启mysql服务,查看编码showvariableslike'%char%';
- 记一次mysql中文乱码问题,druid连接池+mysql8.0
c&0xff00
mysql&oracle&数据库
前言乱码问题主要是字符编码不配对引起的,也就是编码和解码的字符集不一致,就造成了乱码。mysql的字符集编码可以参考:mysql字符集与比较规则乱码问题:讲讲我的解决思路1、一开始看到这个问题,首先我先看了该schema下的字符集:showvariableslike'%char%';都正常,为utf8mb4。主要关注的是character_set_client、character_set_conn
- Linux下设置mysql字符集
南风沁雨
mysqllinux
mysql中文乱码解决方法:将mysql数据库编码统一utf81、查看数据库编码:showvariableslike'char%';2、编辑/etc/my.cnf文件vim/etc/my.cnf编辑之前的文件:编辑后的文件内容:[mysql]default-character-set=utf8#[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/
- MySql中文乱码解决
锦哥哥
BUG的解决mysql乱码
1.找到MySql安装路径我的安装路径在C:\ProgramFiles\MySQL\MySQLServer5.5大家可以看一下自己的路径2.用管理员权限打开目录下的my.ini这个文件3.关闭MySql服务这里说明一下如果没有关闭服务会无法修改就和文件占用无法删除一个道理任务管理器-----服务------mysql右击停止4.修改编码找到如下两个变量修改为utf8保存即可5.重启MySql服务就
- phpmyadmin显示中文乱码的问题
iam_Cheng
数据库
问题描述mysql中文乱码:问题分析通过在phpmyadmin中执行插入操作,发现结果是能够正常显示中文,似乎并不是由于mysql的编码问题造成的,那么问题可能出在php连接数据库的过程中解决办法在mysql目录下my.ini文件中[mysql]后插入character_set_server=utf8mb4解决。最后两行是改完之后插入的执行showVARIABLESlike'character%'
- 解压版MYSQL中文乱码问题解决方案
安装的是解压版的MYSQL1:解压之后copy一个my.ini文件然后添加字节编码配置:[client]default-character-set=gbk[mysqld]character-set-server=utf8指定数据库配置文件bin\mysqld--defaults-file=my.ini--initialize-insecure指定配置文件my.ini(如果忽略这一步骤的话,配置my
- sqlserver转mysql的问题
口天吴1114
1.试图连接未注册的连接池修改driver-url和driver-class2.couldnotopenconnectionmysql导入从sqlserver导出的脚本文件主键丢失手动修改主键设置id自递增3.方言修改applicationContext-databaseorg.hibernate.dialect.MySQLDialect4.mysql中文乱码修改driver-urljdbc:my
- linux下mysql中文乱码(中文问号)解决办法
xukung82
LinuxPHP
点击打开链接今天发现我mysql插入中文时老出现????号了,但保存英文是没有问题的,下面我来给各位同学介绍一下linux下mysql中文乱码解决方法。linux下则需要修改/etc/my.cnf,在[mysqld]下加入default-character-set=utf8,[client]下加入default-character-set=utf8,在[mysql]字段里加入default-cha
- linux 下mysql中文乱码解决办法
Autism.粪
linux工具类mysql乱码
通过命令查看showcreatedatabaseenms;通过命令查看showvariableslike’%char%’;然后去修改找到/etc/my.cnf这个文件,如果没有这个文件,则cp/usr/share/mysql/my-medium.cnf/etc/my.cnf复制一份放在目录下然后修改my.cnf[client]default-character-set=utf8[mysqld]ch
- linux下设置mysql数据库字符集utf8
weixin_34228662
数据库操作系统
mysql中文乱码解决方法:将mysql数据库编码统一utf8查看数据库编码:showvariableslike'character%';编辑/etc/my.cnf[mysql]default-character-set=utf8[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sockuser=mysql#Disablingsym
- java类加载顺序
3213213333332132
java
package com.demo;
/**
* @Description 类加载顺序
* @author FuJianyong
* 2015-2-6上午11:21:37
*/
public class ClassLoaderSequence {
String s1 = "成员属性";
static String s2 = "
- Hibernate与mybitas的比较
BlueSkator
sqlHibernate框架ibatisorm
第一章 Hibernate与MyBatis
Hibernate 是当前最流行的O/R mapping框架,它出身于sf.net,现在已经成为Jboss的一部分。 Mybatis 是另外一种优秀的O/R mapping框架。目前属于apache的一个子项目。
MyBatis 参考资料官网:http:
- php多维数组排序以及实际工作中的应用
dcj3sjt126com
PHPusortuasort
自定义排序函数返回false或负数意味着第一个参数应该排在第二个参数的前面, 正数或true反之, 0相等usort不保存键名uasort 键名会保存下来uksort 排序是对键名进行的
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8&q
- DOM改变字体大小
周华华
前端
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
- c3p0的配置
g21121
c3p0
c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。c3p0的下载地址是:http://sourceforge.net/projects/c3p0/这里可以下载到c3p0最新版本。
以在spring中配置dataSource为例:
<!-- spring加载资源文件 -->
<bean name="prope
- Java获取工程路径的几种方法
510888780
java
第一种:
File f = new File(this.getClass().getResource("/").getPath());
System.out.println(f);
结果:
C:\Documents%20and%20Settings\Administrator\workspace\projectName\bin
获取当前类的所在工程路径;
如果不加“
- 在类Unix系统下实现SSH免密码登录服务器
Harry642
免密ssh
1.客户机
(1)执行ssh-keygen -t rsa -C "
[email protected]"生成公钥,xxx为自定义大email地址
(2)执行scp ~/.ssh/id_rsa.pub root@xxxxxxxxx:/tmp将公钥拷贝到服务器上,xxx为服务器地址
(3)执行cat
- Java新手入门的30个基本概念一
aijuans
javajava 入门新手
在我们学习Java的过程中,掌握其中的基本概念对我们的学习无论是J2SE,J2EE,J2ME都是很重要的,J2SE是Java的基础,所以有必要对其中的基本概念做以归纳,以便大家在以后的学习过程中更好的理解java的精髓,在此我总结了30条基本的概念。 Java概述: 目前Java主要应用于中间件的开发(middleware)---处理客户机于服务器之间的通信技术,早期的实践证明,Java不适合
- Memcached for windows 简单介绍
antlove
javaWebwindowscachememcached
1. 安装memcached server
a. 下载memcached-1.2.6-win32-bin.zip
b. 解压缩,dos 窗口切换到 memcached.exe所在目录,运行memcached.exe -d install
c.启动memcached Server,直接在dos窗口键入 net start "memcached Server&quo
- 数据库对象的视图和索引
百合不是茶
索引oeacle数据库视图
视图
视图是从一个表或视图导出的表,也可以是从多个表或视图导出的表。视图是一个虚表,数据库不对视图所对应的数据进行实际存储,只存储视图的定义,对视图的数据进行操作时,只能将字段定义为视图,不能将具体的数据定义为视图
为什么oracle需要视图;
&
- Mockito(一) --入门篇
bijian1013
持续集成mockito单元测试
Mockito是一个针对Java的mocking框架,它与EasyMock和jMock很相似,但是通过在执行后校验什么已经被调用,它消除了对期望 行为(expectations)的需要。其它的mocking库需要你在执行前记录期望行为(expectations),而这导致了丑陋的初始化代码。
&nb
- 精通Oracle10编程SQL(5)SQL函数
bijian1013
oracle数据库plsql
/*
* SQL函数
*/
--数字函数
--ABS(n):返回数字n的绝对值
declare
v_abs number(6,2);
begin
v_abs:=abs(&no);
dbms_output.put_line('绝对值:'||v_abs);
end;
--ACOS(n):返回数字n的反余弦值,输入值的范围是-1~1,输出值的单位为弧度
- 【Log4j一】Log4j总体介绍
bit1129
log4j
Log4j组件:Logger、Appender、Layout
Log4j核心包含三个组件:logger、appender和layout。这三个组件协作提供日志功能:
日志的输出目标
日志的输出格式
日志的输出级别(是否抑制日志的输出)
logger继承特性
A logger is said to be an ancestor of anothe
- Java IO笔记
白糖_
java
public static void main(String[] args) throws IOException {
//输入流
InputStream in = Test.class.getResourceAsStream("/test");
InputStreamReader isr = new InputStreamReader(in);
Bu
- Docker 监控
ronin47
docker监控
目前项目内部署了docker,于是涉及到关于监控的事情,参考一些经典实例以及一些自己的想法,总结一下思路。 1、关于监控的内容 监控宿主机本身
监控宿主机本身还是比较简单的,同其他服务器监控类似,对cpu、network、io、disk等做通用的检查,这里不再细说。
额外的,因为是docker的
- java-顺时针打印图形
bylijinnan
java
一个画图程序 要求打印出:
1.int i=5;
2.1 2 3 4 5
3.16 17 18 19 6
4.15 24 25 20 7
5.14 23 22 21 8
6.13 12 11 10 9
7.
8.int i=6
9.1 2 3 4 5 6
10.20 21 22 23 24 7
11.19
- 关于iReport汉化版强制使用英文的配置方法
Kai_Ge
iReport汉化英文版
对于那些具有强迫症的工程师来说,软件汉化固然好用,但是汉化不完整却极为头疼,本方法针对iReport汉化不完整的情况,强制使用英文版,方法如下:
在 iReport 安装路径下的 etc/ireport.conf 里增加红色部分启动参数,即可变为英文版。
# ${HOME} will be replaced by user home directory accordin
- [并行计算]论宇宙的可计算性
comsci
并行计算
现在我们知道,一个涡旋系统具有并行计算能力.按照自然运动理论,这个系统也同时具有存储能力,同时具备计算和存储能力的系统,在某种条件下一般都会产生意识......
那么,这种概念让我们推论出一个结论
&nb
- 用OpenGL实现无限循环的coverflow
dai_lm
androidcoverflow
网上找了很久,都是用Gallery实现的,效果不是很满意,结果发现这个用OpenGL实现的,稍微修改了一下源码,实现了无限循环功能
源码地址:
https://github.com/jackfengji/glcoverflow
public class CoverFlowOpenGL extends GLSurfaceView implements
GLSurfaceV
- JAVA数据计算的几个解决方案1
datamachine
javaHibernate计算
老大丢过来的软件跑了10天,摸到点门道,正好跟以前攒的私房有关联,整理存档。
-----------------------------华丽的分割线-------------------------------------
数据计算层是指介于数据存储和应用程序之间,负责计算数据存储层的数据,并将计算结果返回应用程序的层次。J
&nbs
- 简单的用户授权系统,利用给user表添加一个字段标识管理员的方式
dcj3sjt126com
yii
怎么创建一个简单的(非 RBAC)用户授权系统
通过查看论坛,我发现这是一个常见的问题,所以我决定写这篇文章。
本文只包括授权系统.假设你已经知道怎么创建身份验证系统(登录)。 数据库
首先在 user 表创建一个新的字段(integer 类型),字段名 'accessLevel',它定义了用户的访问权限 扩展 CWebUser 类
在配置文件(一般为 protecte
- 未选之路
dcj3sjt126com
诗
作者:罗伯特*费罗斯特
黄色的树林里分出两条路,
可惜我不能同时去涉足,
我在那路口久久伫立,
我向着一条路极目望去,
直到它消失在丛林深处.
但我却选了另外一条路,
它荒草萋萋,十分幽寂;
显得更诱人,更美丽,
虽然在这两条小路上,
都很少留下旅人的足迹.
那天清晨落叶满地,
两条路都未见脚印痕迹.
呵,留下一条路等改日再
- Java处理15位身份证变18位
蕃薯耀
18位身份证变15位15位身份证变18位身份证转换
15位身份证变18位,18位身份证变15位
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 201
- SpringMVC4零配置--应用上下文配置【AppConfig】
hanqunfeng
springmvc4
从spring3.0开始,Spring将JavaConfig整合到核心模块,普通的POJO只需要标注@Configuration注解,就可以成为spring配置类,并通过在方法上标注@Bean注解的方式注入bean。
Xml配置和Java类配置对比如下:
applicationContext-AppConfig.xml
<!-- 激活自动代理功能 参看:
- Android中webview跟JAVASCRIPT中的交互
jackyrong
JavaScripthtmlandroid脚本
在android的应用程序中,可以直接调用webview中的javascript代码,而webview中的javascript代码,也可以去调用ANDROID应用程序(也就是JAVA部分的代码).下面举例说明之:
1 JAVASCRIPT脚本调用android程序
要在webview中,调用addJavascriptInterface(OBJ,int
- 8个最佳Web开发资源推荐
lampcy
编程Web程序员
Web开发对程序员来说是一项较为复杂的工作,程序员需要快速地满足用户需求。如今很多的在线资源可以给程序员提供帮助,比如指导手册、在线课程和一些参考资料,而且这些资源基本都是免费和适合初学者的。无论你是需要选择一门新的编程语言,或是了解最新的标准,还是需要从其他地方找到一些灵感,我们这里为你整理了一些很好的Web开发资源,帮助你更成功地进行Web开发。
这里列出10个最佳Web开发资源,它们都是受
- 架构师之面试------jdk的hashMap实现
nannan408
HashMap
1.前言。
如题。
2.详述。
(1)hashMap算法就是数组链表。数组存放的元素是键值对。jdk通过移位算法(其实也就是简单的加乘算法),如下代码来生成数组下标(生成后indexFor一下就成下标了)。
static int hash(int h)
{
h ^= (h >>> 20) ^ (h >>>
- html禁止清除input文本输入缓存
Rainbow702
html缓存input输入框change
多数浏览器默认会缓存input的值,只有使用ctl+F5强制刷新的才可以清除缓存记录。
如果不想让浏览器缓存input的值,有2种方法:
方法一: 在不想使用缓存的input中添加 autocomplete="off";
<input type="text" autocomplete="off" n
- POJO和JavaBean的区别和联系
tjmljw
POJOjava beans
POJO 和JavaBean是我们常见的两个关键字,一般容易混淆,POJO全称是Plain Ordinary Java Object / Pure Old Java Object,中文可以翻译成:普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO,但是JavaBean则比 POJO复杂很多, Java Bean 是可复用的组件,对 Java Bean 并没有严格的规
- java中单例的五种写法
liuxiaoling
java单例
/**
* 单例模式的五种写法:
* 1、懒汉
* 2、恶汉
* 3、静态内部类
* 4、枚举
* 5、双重校验锁
*/
/**
* 五、 双重校验锁,在当前的内存模型中无效
*/
class LockSingleton
{
private volatile static LockSingleton singleton;
pri